Comprender referencias de registros y búsquedas polimórficas en aplicaciones de lienzo
Cuando escribía trabajos de investigación en la escuela, es probable que proporcionase una lista de las referencias al final. No incluía una copia de los documentos de referencia que utilizó, sino un vínculo web, el título del libro y el autor, u otra información para que alguien pudiera buscar la fuente original. Mezcló distintos tipos de fuentes en una sola lista, artículos de periódicos junto con grabaciones de audio, cada uno con sus propios detalles específicos para una cita adecuada. Por ejemplo, los artículos de Wikipedia suelen incluir una larga lista de referencias.
En las aplicaciones de lienzo, suele trabajar con copias de registros descargados de orígenes de datos. Usa las funciones LookUp y Filter y la propiedad Selected del control Galería para identificar el registro específico que desea. Todos los registros de Filtrar o Seleccionado será del mismo tipo de tabla, por lo que puede utilizar campos con una simple notación .Campo. Estas copias suelen incluir información de referencia para que pueda usar la función Patch para actualizar la fuente original.
Las aplicaciones de lienzo también son compatibles con referencias de registro. De forma muy similar a una referencia en un trabajo de investigación, una referencia de registro hace referencia a un registro sin incluir una copia completa de este. Tal referencia puede hacer referencia a un registro en cualquier tabla. También como referencias de trabajos de investigación, puede mezclar registros de diferentes tablas en una sola columna.
Muchas operaciones en referencias de registro son idénticas a trabajar con registros. Puede comparar referencias de registro entre sí y con registros completos. Puede establecer el valor de una referencia de registro con la función Patch como lo haría con una búsqueda con un registro completo.
Hay una diferencia de uso importante: no puede acceder directamente a los campos de una referencia de registro sin establecer primero a qué tabla se refiere. Esto se debe a que las aplicaciones de lienzo requieren que se conozcan todos los tipos al escribir fórmulas. Dado que no conoce el tipo de una referencia de registro hasta que se ejecuta la aplicación, no puede usar directamente la notación simple .Field. Primero debe determinar dinámicamente el tipo de tabla con la función IsType y luego usar la notación .Campo en el resultado de la función AsType función.
Tipo de tabla se refiere al esquema de cada registro en una tabla. Cada tabla tiene un conjunto único de campos con diferentes nombres y tipos de datos. Cada registro de la tabla hereda esa estructura; dos registros tienen el mismo tipo de tabla si provienen de la misma tabla.
Nota
Puede elegir entre muchos conectores diferentes para conectarse a diferentes tipos de fuentes de datos para aplicaciones de lienzo. Sin embargo, al trabajar con aplicaciones de lienzo dentro de Power Apps Studio, las columnas en Microsoft Dataverse se conocen como campos similares a todas las demás fuentes de datos. Columna solo se usa cuando se hace referencia a una columna dentro de Dataverse. Más información: actualizaciones de terminología de Dataverse
Búsquedas polimórficas
Microsoft Dataverse admite relaciones entre registros. Cada registro en la tabla Cuentas tiene una columna de búsqueda Contacto primario a un registro en la tabla Contactos. La búsqueda solo puede hacer referencia a un registro en Contactos y no puede hacer referencia a un registro en, digamos, la tabla Equipos. Ese último detalle es importante porque siempre sabe qué columnas estarán disponibles para la búsqueda.
Dataverse también admite búsquedas polimórficas, que pueden hacer referencia a un registro de cualquier tabla de un conjunto. Por ejemplo, la columna Propietario columna puede referirse a un registro en la tabla Usuarios o Equipos. La misma columna de búsqueda en diferentes registros podría hacer referencia a registros en diferentes tablas. En este caso, no siempre sabe qué columnas estarán disponibles.
Las referencias de registro de lienzo se diseñaron para trabajar con búsquedas polimórficas en Dataverse. También puede usar referencias de registros fuera de este contexto, que es la diferencia entre los dos conceptos.
En la siguiente sección, comenzará a explorar estos conceptos trabajando con la búsqueda Propietario.
Mostrar las columnas de un propietario de registro
Cada tabla en Dataverse incluye una columna Propietario. Esta columna no se puede eliminar, no se puede agregar otra y siempre requiere un valor.
Para mostrar esa columna en la tabla Cuenta:
Inicie sesión en Power Apps.
En la barra del panel de navegación izquierdo, seleccione Datos > Tablas.
En la lista de tablas, seleccione Cuenta.
En la esquina superior derecha, abra la lista de filtros (que está establecida en Default de forma predeterminada) y luego seleccione Todos.
Desplácese hacia abajo hasta que aparezca la columna Propietario.
Esta columna de búsqueda puede referirse a un registro en la tabla Usuarios o Equipos. No todos los registros de estas tablas tienen permiso para ser un Propietario; compruebe los roles admitidos si tiene algún problema.
Este gráfico muestra una galería simple de Cuentas, donde la tabla Cuentas se ha agregado a la aplicación como origen de datos:
Importante
A lo largo de este tema, los gráficos muestran algunos nombres y otros valores que no forman parte de los datos de ejemplo que se incluyen con Dataverse. Los pasos demuestran con precisión cómo configurar los controles para un resultado particular, pero su experiencia variará según los datos de su organización.
Para mostrar el propietario de cada cuenta en la galería, puede que se sienta tentado a usar la fórmula ThisItem.Owner.Name. Sin embargo, el campo de nombre en la tabla Equipo es Nombre del equipo y el campo de nombre en la tabla Usuario es Nombre completo. La aplicación no puede saber con qué tipo de búsqueda está trabajando hasta que ejecuta la aplicación, y puede variar entre registros en la tabla Cuentas.
Necesita una fórmula que pueda adaptarse a esta variación. También debe agregar las fuentes de datos para los tipos de tabla que Propietario podría ser (en este caso, Usuarios y Equipos). Agregue estos tres orígenes de datos a su aplicación:
Con estos orígenes de datos, utilice esta fórmula para mostrar el nombre de un usuario o equipo:
If( IsType( ThisItem.Owner, Teams ),
"Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
"User: " & AsType( ThisItem.Owner, Users ).'Full Name' )
En esta fórmula, la función IsType prueba el campo Dueño contra la tabla Equipos. Si es de ese tipo de tabla, la función AsType lo convierte en un registro Equipo. En este punto, puede acceder a todos los campos de la tabla Equipos, incluyendo Nombre del equipo, usando la notación .Campo. Si IsType determina que el Propietario no es un registro en la tabla Equipos, ese campo debe ser un registro en la tabla Usuarios porque el campo Propietario es obligatorio (no puede ser blanco).
Para usar cualquier campo de una referencia de registro, primero debe usar la función AsType para convertirlo en un tipo de tabla específico. No puede acceder a los campos directamente desde el campo Propietario porque el sistema no sabe qué tipo de tabla desea utilizar.
La función AsType devuelve un error si el campo Propietario no coincide con el tipo de tabla que se solicita, por lo que puede usar la función IfError para simplificar esta fórmula. En primer lugar, active la característica experimental Administración de errores a nivel de fórmula:
A continuación, reemplace la fórmula anterior por esta:
IfError(
"Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
"User: " & AsType( ThisItem.Owner, Users ).'Full Name' )
Filtrar según un propietario
Enhorabuena: ha terminado el aspecto más difícil de trabajar con una referencia de registro. Otros casos de uso son más directos porque no acceden a los campos del registro. Como ejemplo, tomemos el filtrado, que explorará en esta sección.
Agregue un control Cuadro combinado sobre la galería y establezca estas propiedades del nuevo control:
- Items:
Users
- SelectMultiple:
false
Para filtrar la galería por un usuario específico seleccionado de este cuadro combinado, configure la propiedad Items de la galería de esta fórmula:
Filter( Accounts, Owner = ComboBox1.Selected )
Importante
Las instrucciones en este tema son precisas si sigue los pasos exactamente. Sin embargo, cualquier fórmula que haga referencia a un control por su nombre da error si el control tiene un nombre diferente. Si elimina y agrega un control del mismo tipo, el número al final del nombre del control cambia. Para cualquier fórmula que muestre un error, confirme que contiene los nombres correctos de todos los controles.
No tiene que usar IsType o AsType porque está comparando referencias de registro con otras referencias de registro o con registros completos. La aplicación conoce el tipo de tabla de ComboBox1.Selected porque se deriva de la tabla Usuarios. Las cuentas para las que el propietario es un equipo no coincidirán con el criterio de filtro.
Puede ser un poco más sofisticado si admite el filtrado por parte de un usuario o un equipo.
Deje algo de espacio cerca de la parte superior de la pantalla cambiando el tamaño de la galería y moviendo el cuadro combinado, inserte un control Radio encima de la galería y, a continuación, establezca estas propiedades para el nuevo control:
- Items:
[ "All", "Users", "Teams" ]
- Layout:
Layout.Horizontal
- Items:
Para el control Cuadro combinado, establezca esta propiedad (si el cuadro combinado desaparece, seleccione Usuarios en el control de radio):
- Visible:
Radio1.Selected.Value = "Users"
- Visible:
Copie y pegue el control Cuadro combinado, mueva la copia directamente sobre el original y luego configure estas propiedades para la copia:
- Items:
Teams
- Visible:
Radio1.Selected.Value = "Teams"
La aplicación mostrará solo un cuadro combinado a la vez, según el estado del control de radio. Puesto que están directamente uno encima del otro, parecerá que son el mismo control que cambia su contenido.
- Items:
Finalmente, establezca la propiedad Items del control Galería en esta fórmula:
Filter( Accounts, Radio1.Selected.Value = "All" Or (Radio1.Selected.Value = "Users" And Owner = ComboBox1.Selected) Or (Radio1.Selected.Value = "Teams" And Owner = ComboBox1_1.Selected) )
Con estos cambios, puede mostrar todos los registros o filtrarlos en función de un usuario o un equipo:
La fórmula es totalmente delegable. La parte que compara los valores de los botones de radio es una constante en todos los registros y se evalúa antes de enviar el resto del filtro a Dataverse.
Si desea filtrar por tipo de propietario, puede usar la función IsType, pero aún no es delegable.
Actualizar el propietario mediante Patch
Puede actualizar el campo Propietario de la misma manera que cualquier otra búsqueda. Para establecer el propietario de la cuenta seleccionada actualmente en el primer equipo:
Patch( Accounts, Gallery1.Selected, { Owner: First( Teams ) } )
Este enfoque no difiere de una búsqueda normal porque la aplicación conoce el tipo de First( Teams ). Si desea el primer usuario, reemplace esa porción por First( Users ). La función Parche sabe que el campo Propietario se puede establecer en cualquiera de estos dos tipos de tabla.
Para agregar esta funcionalidad a la aplicación:
En el panel Vista de árbol, seleccione el control Radio y los dos controles Cuadro combinado al mismo tiempo.
En el menú de puntos suspensivos, seleccione Copiar estos elementos.
En el mismo menú, seleccione Pegar.
Mueva los controles copiados a la derecha de la galería.
Seleccione el control Radio copiado y, a continuación, cambie estas propiedades:
- Items:
[ "Users", "Teams" ]
- Opción predeterminada:
If( IsType( Gallery1.Selected.Owner, Users ), "Users", "Teams" )
- Items:
En el control Radio, seleccione Usuarios de manera que el control Cuadro combinado que enumera los usuarios sea visible.
Seleccione el control Cuadro combinado visible y, a continuación, establezca la propiedad DefaultSelectedItems para esta fórmula:
If( IsType( Gallery1.Selected.Owner, Users ), AsType( Gallery1.Selected.Owner, Users ), Blank() )
En el control Radio, seleccione Equipos de manera que el control Cuadro combinado que enumera los equipos sea visible.
Seleccione el control Radio para quitar la selección del control Cuadro combinado ahora visible para usuarios.
Seleccione el control Cuadro combinado visible para equipos y, a continuación, establezca su propiedad DefaultSelectedItems para esta fórmula:
If( IsType( Gallery1.Selected.Owner, Teams ), AsType( Gallery1.Selected.Owner, Teams ), Blank() )
Inserte un control Botón, colóquelo bajo el control Cuadro combinado y, a continuación, establezca la propiedad Text del botón en
"Patch Owner"
.Establezca la propiedad OnSelect del botón en esta fórmula:
Patch( Accounts, Gallery1.Selected, { Owner: If( Radio1_1.Selected.Value = "Users", ComboBox1_2.Selected, ComboBox1_3.Selected ) } )
Los controles Radio y Cuadro combinado copiados muestran el propietario de la cuenta seleccionada actualmente en la galería. Con los mismos controles, puede establecer el propietario de la cuenta para cualquier equipo o usuario seleccionando el botón:
Mostrar el propietario mediante un formulario
Puede mostrar un campo Propietario dentro de un formulario agregando una tarjeta personalizada. En el momento de redactar este documento, no puede cambiar el valor del campo con un control de formulario.
Inserte un control Editar formulario y, a continuación, cambie el tamaño y muévalo a la esquina inferior derecha.
En la pestaña Propiedades cerca del lado derecho de la pantalla, abra la lista Origen de datos y, a continuación, seleccione Cuentas.
Establezca la propiedad Items del formulario en
Gallery1.Selected
.En la pestaña Propiedades cerca del lado derecho de la pantalla, seleccione Editar campos.
En el panel Campos, seleccione los puntos suspensivos y luego seleccione Agregar una tarjeta personalizada.
La nueva tarjeta aparece en la parte inferior del control de formulario.
Cambie el tamaño de la tarjeta según sea necesario para mostrar todo el texto.
Inserte un control Etiqueta en la tarjeta personalizada y, a continuación, establezca la propiedad Text de la etiqueta en la fórmula que usó en la galería:
If( IsType( ThisItem.Owner, Teams ), "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name', "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )
Para cada selección en la galería, aparecen más campos de la cuenta, incluido el propietario del registro, en el formulario. Si cambia de propietario utilizando el botón Patch, el control del formulario también muestra ese cambio.
Mostrar las columnas de un cliente
En Dataverse, la columna de búsqueda Cliente es otra búsqueda polimórfica que es muy similar a Propietario.
Propietario está limitado a uno por tabla, pero las tablas pueden incluir cero, una o más columnas de búsqueda Cliente. La tabla del sistema Contactos incluye la columna Nombre de empresa, que es una columna de búsqueda Cliente.
Puedes agregar mas columnas de búsqueda Cliente en una tabla seleccionando el tipo de datos Cliente para una nueva columna.
Un campo de búsqueda Cliente puede referirse a un registro de la tabla Cuentas o la tabla Contactos. Usará las funciones IsType y AsType con estas tablas, por lo que ahora es un buen momento para agregarlas como fuentes de datos (puede dejar Equipos y Usuarios en su lugar).
El tratamiento de los campos Cliente y Propietario es tan similar que puede copiar literalmente la aplicación (Archivo > Guardar como y, a continuación, especifique un nombre diferente) y realice estos reemplazos simples:
Ubicación | Ejemplo de Propietario | Ejemplo de Cliente |
---|---|---|
Todas | Propietario | 'Nombre de cliente' |
Todas | Usuarios | Cuentas |
Todas | Equipos | Contactos |
Propiedad Items de la galería | Cuentas | Contactos |
Propiedad Items del formulario | Cuentas | Contactos |
El primer argumento de Patch en la propiedad OnSelect del botón |
Cuentas | Contactos |
Propiedad Items del control de radio del filtro | [ "Todos", "Usuarios", "Equipos" ] | [ "Todos", "Cuentas", "Contactos" ] |
Propiedad Items del control de radio del parche | [ "Usuario", "Equipos" ] | [ "Cuentas", "Contactos" ] |
Propiedad Visible del cuadro combinado | Usuarios y Equipos | "Cuentas" y "Contactos" |
Por ejemplo, la nueva galería debería tener esta propiedad Items:
Filter( Contacts,
Radio1.Selected.Value = "All"
Or (Radio1.Selected.Value = "Accounts" And 'Company Name' = ComboBox1.Selected)
Or (Radio1.Selected.Value = "Contacts" And 'Company Name' = ComboBox1_1.Selected)
)
Dos diferencias importantes entre Cliente y Propietario requieren una actualización de las fórmulas dentro de la galería y el formulario:
Las relaciones uno a varios entre Cuentas y Contactos tienen prioridad cuando se refiere a estos tipos de tablas por su nombre. En lugar de Cuentas, utilice [@Accounts]; en vez de Contactos, utilice [@Contacts]. Usando el operador de desambiguación global, asegúrese de que se refiere al tipo de tabla en IsType y AsType. Este problema solo existe en el contexto de registro de los controles Galería y Form.
El campo Propietario debe tener un valor, pero los campos Cliente pueden estar en blanco. Para mostrar el resultado correcto sin un nombre de tipo, pruebe este caso con la función IsBlank y muestre una cadena de texto vacía.
Ambos cambios están en la misma fórmula, que aparece en la tarjeta personalizada en el formulario, así como en la propiedad Text del control de etiqueta de la galería:
If( IsBlank( ThisItem.'Company Name' ), "",
IsType( ThisItem.'Company Name', Accounts ),
"Account: " & AsType( ThisItem.'Company Name', Accounts ).'Account Name',
"Contact: " & AsType( ThisItem.'Company Name', Contacts ).'Full Name'
)
Con estos cambios, puede ver y cambiar el campo Nombre de empresa en la tabla Contactos.
Comprender las columnas de búsqueda
La columna de búsqueda Con respecto a difiere un poco de las que ya ha trabajado dentro de este tema. Comenzará aplicando los patrones que se describieron anteriormente en este tema y, a continuación, aprenderá otros trucos.
Puede comenzar simplemente con la tabla Faxes. Esta tabla tiene una columna de búsqueda polimórfica Con respecto a, que puede hacer referencia a Cuentas, Contactos y otras tablas. Puedes usar la aplicación para Clientes y modificarla para Faxes.
Ubicación | Ejemplo de Cliente | Ejemplo de Faxes |
---|---|---|
Todas | 'Nombre de cliente' | Referente a |
Propiedad Items de la galería | Contactos | Faxes |
Propiedad Items del formulario | Contactos | Faxes |
El primer argumento de Patch en la propiedad OnSelect del botón |
Contactos | Faxes |
De nuevo, tendrá que agregar un origen de datos: esta vez para Faxes. En la pestaña Vista, seleccione Orígenes de datos:
Una diferencia importante para Referente a es que no se limita a Cuentas y Contactos. De hecho, la lista de tablas se puede ampliar con tablas personalizadas. La mayoría de las aplicaciones puede distribuir este punto sin modificaciones, pero debe actualizar la fórmula de la etiqueta en la galería y el formulario:
If( IsBlank( ThisItem.Regarding ), "",
IsType( ThisItem.Regarding, Accounts ),
"Account: " & AsType( ThisItem.Regarding, Accounts ).'Account Name',
IsType( ThisItem.Regarding, Contacts ),
"Contacts: " & AsType( ThisItem.Regarding, Contacts ).'Full Name',
""
)
Después de realizar estos cambios, trabaja con la búsqueda Referente a tal como hizo con las búsquedas Propietario y Cliente.
Comprender relaciones Referente a
Referente a difiere de Propietario y Cliente porque el primero implica una relación de varios a uno. Por definición, una relación inversa de uno a varios le permite escribir First( Accounts ).Faxes.
Retrocedamos y veamos las definiciones de la tabla. En Dataverse, tablas como Faxes, Tareas, Correos electrónicos, Notas, Llamadas telefónicas, Cartas, y Chats están designadas como actividades. También puede crear sus propias tablas de actividad personalizadas. Cuando visualiza o crea una tabla de actividades, su configuración aparece en Más configuración.
Otras tablas se pueden relacionar con una tabla de actividad si están habilitadas como tarea de actividad en la configuración de la tabla. Cuentas, Contactos y muchas otras tablas estándar se designan así (nuevamente, bajo Más configuración).
Todas las tablas de actividad y las tablas de actividad-tarea tienen una relación implícita. Si cambia el filtro a Todas en la parte superior de la pantalla, selecciona la tabla Faxes y luego selecciona la pestaña Relaciones, todas las tablas que pueden ser el destino de un Con respecto a aparecen en la búsqueda.
Si muestra las relaciones para la tabla Cuentas, todas las tablas que pueden ser una fuente del campo de búsqueda Con respecto a aparecen.
¿Qué significa todo?
- Cuando escribe fórmulas, debe tener en cuenta que la lista de tablas de actividad no es fija y puede crear la suya propia. La fórmula debe gestionar adecuadamente una tabla de actividades que no esperaba.
- Las tareas de actividad y las actividades tienen una relación de uno a varios. Puede solicitar fácilmente todos los faxes relacionados con una cuenta.
Para explorar este concepto en la aplicación:
Agregue otra pantalla.
Inserte un control de galería, cambie su tamaño y luego muévalo al lado izquierdo de la pantalla.
En la pestaña Propiedades junto al lado derecho de la pantalla, establézcala propiedad de la galería Items en Cuentas.
Establezca el diseño de la galería en Título y, a continuación, establezca el campo de título en Nombre de la cuenta.
Agregue una segunda galería, cambie su tamaño y luego muévalo al lado derecho de la pantalla.
Establezca la nueva propiedad Items de la galería en
Gallery2.Selected.Faxes
.Este paso devuelve la lista filtrada de faxes para una cuenta determinada.
Establezca el diseño de la galería en Título y subtítulo y, a continuación, establezca el campo de título para mostrar el campo Asunto (que puede ser el asunto en minúsculas).
Cuando selecciona un elemento en la lista de cuentas, la lista de faxes muestra los faxes solo para esa cuenta.
Tabla de actividades
Como se describe en la sección anterior, puede mostrar todos los faxes de una cuenta. Sin embargo, también puede mostrar todas las actividades de una cuenta, incluidos faxes, mensajes de correo electrónico, llamadas telefónicas y otras interacciones.
Para el último escenario, use la tabla Actividad. Puede mostrar esta tabla activando Todas en la esquina superior derecha para eliminar el filtro de la lista de tablas.
La tabla Actividad es especial. Siempre que agregue un registro a la tabla Faxes, el sistema también crea un registro en la tabla Actividad con las columnas que son comunes en todas las tablas de actividad. De esas columnas, Asunto es una de las más interesantes.
Puede mostrar todas las actividades cambiando solo una línea en el ejemplo anterior. Reemplace Gallery2.Selected.Faxes
por Gallery2.Selected.Activities
.
Los registros provienen de la tabla Actividad tabla, pero de todos modos puede utilizar la función IsType para identificar qué tipo de actividad son. De nuevo, antes de usar IsType con un tipo de tabla, debe agregar el origen de datos.
Al usar esta fórmula, puede mostrar el tipo de registro en un control de etiqueta dentro de la galería:
If( IsType( ThisItem, Faxes] ), "Fax",
IsType( ThisItem, 'Phone Calls' ), "Phone Call",
IsType( ThisItem, 'Email Messages' ), "Email Message",
IsType( ThisItem, Chats ), "Chat",
"Unknown"
)
También puedes usar AsType para acceder a los campos del tipo específico. Por ejemplo, esta fórmula determina el tipo de cada actividad y, para las llamadas telefónicas, muestra el número de teléfono y la dirección de la llamada desde la tabla Números de teléfono:
If( IsType( ThisItem, Faxes ), "Fax",
IsType( ThisItem, 'Phone Calls' ),
"Phone Call: " &
AsType( ThisItem, 'Phone Calls' ).'Phone Number' &
" (" & AsType( ThisItem, 'Phone Calls' ).Direction & ")",
IsType( ThisItem, 'Email Messages' ), "Email Message",
IsType( ThisItem, Chats ), "Chat",
"Unknown"
)
Como consecuencia, la aplicación muestra una lista completa de actividades. El campo Asunto aparece para todo tipo de actividades, tanto si la fórmula las tiene en cuenta o no. Para los tipos de actividades que conoce, puede mostrar sus nombres de tipo e información específica de tipo sobre cada actividad.
Tabla de notas
Hasta ahora, todos los ejemplos de Con respecto a se han basado en actividades, pero la tabla Notas representa otro caso.
Cuando crea una tabla, puede habilitar los archivos adjuntos.
Si selecciona la casilla de verificación para habilitar archivos adjuntos, creará una relación Con respecto a con la tabla Notas, como muestra este gráfico para la tabla Cuentas:
Aparte de esta diferencia, utiliza la búsqueda Referente a de la misma manera en que usa las actividades. Las tablas que están habilitadas para archivos adjuntos tienen una relación de uno a varios con Notas, como en este ejemplo:
First( Accounts ).Notes
Nota
En el momento de escribir estas líneas, la búsqueda Con respecto a no está disponible para la tabla Notas. No puede leer ni filtrar según la columna Con respecto a, y no puede configurar la columna usando Parche.
No obstante, la relación inversa de uno a varios de Notas está disponible, por lo que puede filtrar una lista de notas para un registro que esté habilitado para datos adjuntos. También puede usar la función Relate para agregar una nota a una tabla Notas del registro, pero la nota debe crearse primero, como en este ejemplo:
Relate( ThisItem.Notes, Patch( Notes, Defaults( Notes ), { Title: "A new note" } ) )
Grupos de actividad
En el momento de redactar este documento, las aplicaciones de lienzo no admiten grupos de actividad.
Nota
¿Puede indicarnos sus preferencias de idioma de documentación? Realice una breve encuesta. (tenga en cuenta que esta encuesta está en inglés)
La encuesta durará unos siete minutos. No se recopilan datos personales (declaración de privacidad).