Comparteix a través de


Entendre les referències de registres i cerques polimòrfiques en aplicacions del llenç

Quan escrivíeu un treball de recerca a l'escola, probablement proporcionàveu una llista de referències al final. No incloíeu una còpia del material de fons real que havíeu fet servir, sinó un enllaç web, un títol de llibre i un autor, o altres informacions per tal que algú pogués fer el seguiment de la font original. Barrejàveu diversos tipus de fonts en una sola llista, articles de premsa al costat d'enregistraments d'àudio, cadascun dels seus propis detalls específics per a una citació adequada. Per exemple, els articles de la Viquipèdia sovint inclouen una llarga llista de referències.

A les aplicacions del llenç, sovint treballeu amb còpies de registres descarregades des de fonts de dades. Utilitzeu les funcions de LookUp i Filter i la propietat Seleccionat del control Galeria per identificar el registre específic que voleu. Tots els registres de Filtra o Seleccionat seran del mateix tipus de taula, de manera que podeu utilitzar els camps amb una senzilla notació de Camp. Aquestes còpies sovint inclouen informació de referència per tal de poder utilitzar la funció Patch per actualitzar la font original.

Les aplicacions del llenç també admeten referències de registres. Igual que una referència de recerca, una referència de registre fa referència a un registre sense incloure-hi una còpia completa. Aquesta referència pot fer referència a un registre de qualsevol taula. De la mateixa manera que les referències de recerca en paper, podeu barrejar registres de diferents taules en una única columna.

Moltes operacions sobre referències de registres són idèntiques a treballar amb registres. Podeu comparar les referències d'un registre entre si i amb registres complets. Podeu definir el valor d'un registre de referència amb la funció Patch com si fos una cerca amb un registre complet.

Hi ha una diferència d'ús important: no podeu accedir directament als camps d'una referència de registre sense establir primer a quina taula fa referència. Això és degut a que les aplicacions del llenç requereixen que tots els tipus es coneguin en escriure fórmules. Com que no coneixeu el tipus de referència d'un registre fins que s'executa l'aplicació, no podreu utilitzar la notació senzilla .Field directament. Primer heu de determinar de manera dinàmica el tipus de taula amb la funció IsType i, a continuació, utilitzar la notació Camp al resultat de la funció AsType.

El tipus de taula fa referència a l'esquema de cada registre d'una taula. Cada taula té un conjunt únic de camps amb diferents noms i tipus de dades. Cada registre de la taula hereta aquesta estructura; dos registres tenen el mateix tipus de taula si provenen de la mateixa taula.

Nota

Podeu triar entre molts connectors diferents per connectar-vos a diferents tipus de fonts de dades per a les aplicacions del llenç. No obstant això, quan es treballa amb aplicacions del llenç al Power Apps Studio, les columnes del Microsoft Dataverse s'anomenen camps semblants a la resta de fonts de dades. La columna només s'utilitza quan es fa referència a una columna a l'interior del Dataverse. Més informació: Actualitzacions de terminologia del Dataverse

Cerques polimòrfiques

El Microsoft Dataverse admet les relacions entre registres. Cada registre de la taula Comptes té una columna de cerca de Contacte principal a un registre de la taula Contactes. La cerca només pot fer referència a un registre de Contactes i no pot fer referència a un registre a la taula Equips, per exemple. Aquest darrer detall és important perquè sempre sabeu quines columnes esteu disponibles per a la cerca.

El Dataverse també admet consultes polimòrfiques que poden fer referència a un registre de qualsevol taula d'un conjunt. Per exemple, la columna Propietari pot fer referència a un registre de la taula Usuaris o a la taula Equips. La mateixa columna de cerca de registres diferents podria fer referència als registres de diferents taules. En aquest cas, no sempre en sabreu les columnes disponibles.

Les referències de registres del llenç s'han dissenyat per treballar amb cerques polimòrfiques al Dataverse. També podeu utilitzar referències de registres fora d'aquest context, de manera que es diferencien els dos conceptes.

A la secció següent, començareu a explorar aquests conceptes treballant amb la cerca Propietari.

Mostra les columnes d'un propietari del registre

Cada taula al Dataverse inclou una columna Propietari. Aquesta columna no es pot suprimir, no se'n pot afegir cap altra i sempre necessita un valor.

Per mostrar aquesta columna a la taula Compte:

  1. Inicieu la sessió a Power Apps.

  2. A la barra de la subfinestra esquerra, seleccioneu Dades > Taules.

  3. A la llista de taules, seleccioneu Compte.

  4. A la cantonada superior dreta, obriu la llista de filtres (que està definida com a Per defecte per defecte) i, a continuació, seleccioneu Tot.

  5. Desplaceu-vos cap avall fins que aparegui la columna Propietari.

    Columna Propietari de la taula de comptes

Aquesta columna de cerca pot fer referència a un registre de la taula Equips o de la taula Usuaris. No tots els registres d'aquestes taules tenen permís per ser Propietari; comproveu les funcions admeses si us trobeu algun problema.

Aquest gràfic mostra una simple galeria de Comptes en la qual taula Comptes s'ha afegit a l'aplicació com una font de dades:

Comptes mostrats en un control de galeria

Important

Al llarg d'aquest tema, els gràfics mostren alguns noms i altres valors que no formen part de les dades d'exemple que venen amb el Dataverse. Els passos mostren amb precisió la manera de configurar els controls per a un resultat concret, però la vostra experiència variarà en funció de les dades de l'organització.

Per mostrar el propietari de cada compte de la galeria, pot ser que vulgueu utilitzar la fórmula ThisItem.Owner.Name. Tanmateix, el camp de nom de la taula Equip és Nom de l'equip, i el camp de nom de la taula Usuari és Nom complet. L'aplicació no pot saber amb quin tipus de cerca esteu treballant fins que executeu l'aplicació i pot variar entre registres de la taula Comptes.

Us cal una fórmula que es pugui adaptar a aquesta variació. També heu d'afegir les fonts de dades dels tipus de taules que podria ser Propietari (en aquest cas, Usuaris i Equips). Afegiu aquestes tres fonts de dades a l'aplicació:

Taules de comptes, d'equips i d'usuaris de la subfinestra Dades

Amb aquestes fonts de dades, utilitzeu aquesta fórmula per mostrar el nom d'un usuari o d'un equip:

If( IsType( ThisItem.Owner, Teams ),
    "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
    "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )

Comptes mostrats en un control de galeria amb el camp Propietari visualitzat

En aquesta fórmula, la funció IsType prova el camp Propietari contra la taula Equips. Si és d'aquest tipus de taula, la funció AsType l'escriu a un registre d'Equips. En aquest moment, podeu accedir a tots els camps de la taula Equips, inclòs Nom de l'equip, mitjançant la notació .Camp. Si IsType determina que Propietari no és un registre de la taula Equips, aquest camp ha de ser un registre de la taula Usuaris perquè el camp Propietari és obligatori (no pot estar en blanc).

Per utilitzar qualsevol camp d'una referència de registre, primer heu d'utilitzar la funció AsType per canviar-la a un tipus de taula específic. No podeu accedir als camps directament des del camp Propietari perquè el sistema no sap el tipus de taula que voleu utilitzar.

La funció AsType retorna un error si el camp Propietari no coincideix amb el tipus de taula que s'ha sol·licitat, de manera que podeu utilitzar la funció IfError per simplificar aquesta fórmula. En primer lloc, activeu la característica experimental Administració d'errors al nivell de fórmula:

Commutador experimental per activar l'administració d'errors al nivell de fórmula

A continuació, substituïu la fórmula anterior per aquesta:

IfError(
    "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
    "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )

Filtrar en funció d'un propietari

L'enhorabona, heu acabat l'aspecte més difícil de treballar amb una referència de registre. Altres casos d'ús són més senzills, ja que no accedeixen als camps del registre. Com a cas de partida, agafeu el filtratge, que explorareu en aquesta secció.

Afegiu un control Quadre combinat a sobre de la galeria i definiu aquestes propietats del nou control:

  • Elements: Users
  • SelectMultiple: false

Control de quadre combinat afegit a la galeria amb la propietat Elements definida com a usuaris

Per filtrar la galeria per un usuari específic seleccionat des d'aquest quadre combinat, definiu la propietat Elements de la galeria en aquesta fórmula:

Filter( Accounts, Owner = ComboBox1.Selected )

Galeria filtrada segons el valor establert al control de quadre combinat

Important

Les instruccions d'aquest tema són precises si seguiu els passos que s'indiquen exactament. No obstant, qualsevol fórmula que faci referència a un control pel seu nom falla si el control té un nom diferent. Si suprimiu i afegiu un control del mateix tipus, el número al final del nom del control canvia. Per a qualsevol fórmula que mostri un error, confirmeu que conté els noms correctes de tots els controls.

No heu d'utilitzar IsType o AsType perquè compareu referències de registres a altres referències de registres o a registres complets. L'aplicació coneix el tipus de taula ComboBox1.Selected perquè està derivada de la taula Usuaris. Els comptes per als quals el propietari és un equip no coincidiran amb el criteri de filtratge.

Podeu fer una mica més admetent el filtratge per usuari o equip.

  1. Feu una mica d'espai a la part superior de la pantalla canviant la mida de la galeria i moveu el quadre combinat, inseriu un control Botó d'opció a sobre de la galeria i, a continuació, definiu aquestes propietats per al control nou:

    • Elements: [ "All", "Users", "Teams" ]
    • Disposició: Layout.Horizontal
  2. Per al control Quadre combinat, definiu aquesta propietat (si el quadre combinat desapareix, seleccioneu Usuaris al control de botó d'opció):

    • Visible: Radio1.Selected.Value = "Users"
  3. Copieu i enganxeu el control Quadre combinat, moveu la còpia directament sobre l'original i, a continuació, definiu aquestes propietats per a la còpia:

    • Elements: Teams
    • Visible: Radio1.Selected.Value = "Teams"

    L'aplicació només mostrarà un quadre combinat cada vegada, en funció de l'estat del control de botó d'opció. Com que estan per sobre de l'altre de manera directa, semblaran el mateix control que canvia el seu contingut.

  4. Finalment, definiu la propietat Elements del control Galeria a aquesta 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)
    )
    

    Galeria filtrada que mostra tots els registres o un usuari o un equip específic

Amb aquests canvis, podeu mostrar tots els registres o filtrar-los en funció d'un usuari o d'un equip:

Animació que mostra diferents resultats filtrats a partir del control de botó d'opció i els quadres combinats

La fórmula és totalment delegable. La porció que està comparant els valors del botó d'opció és una constant en tots els registres i s'avalua abans que la resta del filtre s'enviï al Dataverse.

Si voleu filtrar segons el tipus de propietari, podeu utilitzar la funció IsType, però encara no és delegable.

Filtrar per tipus de propietari mitjançant IsType.

Actualitzar el propietari mitjançant Patch

Podeu actualitzar el camp Owner de la mateixa manera que qualsevol altra cerca. Per definir el propietari del compte que s'ha seleccionat actualment al primer equip:

Patch( Accounts, Gallery1.Selected, { Owner: First( Teams ) } )

Aquest enfocament no difereix d'una cerca normal perquè l'aplicació coneix el tipus de First( Equips ). Si voleu el primer usuari en el seu lloc, substituïu aquesta porció per First( Usuaris ). La funció Pedaç sap que el camp Propietari pot definir-se en qualsevol d'aquests dos tipus de taula.

Per afegir aquesta capacitat a l'aplicació:

  1. A la subfinestra Visualització d'arbre, seleccioneu el control Botó d'opció i els dos controls Quadre combinat al mateix temps.

  2. Al menú de punts suspensius, seleccioneu Copia aquests elements.

    Còpia de diversos controls amb la visualització d'arbre

  3. Al mateix menú, seleccioneu Enganxa.

    Enganxament de diversos controls amb la visualització d'arbre

  4. Moveu els controls copiats a la dreta de la galeria.

    Controls copiats moguts a la dreta de la galeria

  5. Seleccioneu el control Botó d'opció copiat i, a continuació, canvieu aquestes propietats:

    • Elements: [ "Users", "Teams" ]
    • Per defecte: If( IsType( Gallery1.Selected.Owner, Users ), "Users", "Teams" )

    Supressió de totes les opcions del control d'opció

  6. Al control Botó d'opció, seleccioneu Usuaris per tal que el control Quadre combinat que enumera els usuaris estigui visible.

  7. Seleccioneu el control Quadre combinat visible i, a continuació, definiu la propietat DefaultSelectedItems en aquesta fórmula:

    If( IsType( Gallery1.Selected.Owner, Users ),
        AsType( Gallery1.Selected.Owner, Users ),
        Blank()
    )
    

    Conjunt de propietats per defecte per al quadre combinat Usuaris

  8. Al control Botó d'opció, seleccioneu Equips per tal que el control Quadre combinat que enumera els equips estigui visible.

  9. Seleccioneu el control Botó d'opció per treure la selecció del control Quadre combinat ara invisible per als usuaris.

  10. Seleccioneu el control Quadre combinat visible per als equips i, a continuació, definiu la propietat DefaultSelectedItems en aquesta fórmula:

    If( IsType( Gallery1.Selected.Owner, Teams ),
        AsType( Gallery1.Selected.Owner, Teams ),
        Blank()
    )
    

    Conjunt de propietats per defecte per al quadre combinat Equips

  11. Inseriu un control Botó, desplaceu-lo a sota del control Quadre combinat i, a continuació, definiu la propietat Text del botó a "Patch Owner".

  12. Definiu la propietat OnSelect del botó a aquesta fórmula:

    Patch( Accounts, Gallery1.Selected,
        { Owner: If( Radio1_1.Selected.Value = "Users",
                     ComboBox1_2.Selected,
                     ComboBox1_3.Selected ) } )
    

    Fórmula definida en un control de botó

Els controls Botó d'opció i Quadre combinat mostren el propietari per al compte que heu seleccionat actualment a la galeria. Amb els mateixos controls, podeu definir el propietari del compte a qualsevol equip o usuari seleccionant el botó:

Animació que mostra un pedaç del propietari amb un usuari o un equip

Mostrar el propietari mitjançant un formulari

Podeu mostrar un camp Propietari dins d'un formulari afegint-hi una targeta personalitzada. En el moment d'escriptura d'aquest article, no podeu canviar el valor del camp amb un control de formulari.

  1. Inseriu un control Edita el formulari i, a continuació, canvieu la mida i moveu-lo a la cantonada inferior dreta.

  2. A la pestanya Propietats, a prop del costat dret de la pantalla, obriu la llista Font de dades i, a continuació, seleccioneu Comptes.

    Control de formulari que mostra camps addicionals amb valors en blanc

  3. Definiu la propietat Element del formulari a Gallery1.Selected.

    Control de formulari que mostra els camps addicionals emplenats de l'element seleccionat a la galeria

  4. A la pestanya Propietats, a prop del costat dret de la pantalla, seleccioneu Edita els camps.

  5. A la subfinestra Camps, seleccioneu els punts suspensius i, a continuació, seleccioneu Afegeix una targeta personalitzada.

    Ordre per afegir una targeta personalitzada

    La targeta nova apareix a la part inferior del control del formulari.

  6. Canvieu la mida de la targeta segons calgui per mostrar tot el text.

    Targeta personalitzada en blanc inserida

  7. Inseriu un control Etiqueta a la targeta personalitzada i, a continuació, definiu la propietat Text de l'etiqueta a la fórmula que heu utilitzat a la galeria:

    If( IsType( ThisItem.Owner, Teams ),
        "Team: " & AsType( ThisItem.Owner, Teams ).'Team Name',
        "User: " & AsType( ThisItem.Owner, Users ).'Full Name' )
    

    Targeta personalitzada que mostra el camp Propietari en un control d'etiqueta

Per a cada selecció de la galeria, més camps del compte, incloent-hi el propietari del registre, apareixen al formulari. Si canvieu el propietari amb el botó Pedaç, el control del formulari també mostra aquest canvi.

Animació que mostra el control del formulari responent als canvis de la galeria

Mostrar les columnes d'un client

Al Dataverse, la columna de cerca de Client és una altra cerca polimòrfica que és molt semblant a Propietari.

Propietari està limitat a un per taula, però les taules poden incloure zero, una o diverses columnes de cerca de Client. La taula del sistema Contactes inclou la columna Nom de l'empresa, que és una columna de cerca de Client.

Taula de contactes que mostra la columna Nom de l'empresa com a tipus de dades de client que no és necessari

Per afegir més columnes de cerca de Client a una taula, seleccioneu el tipus de dades Client d'una columna nova.

Tipus de dades de client de la llista de tipus de dades en crear una columna

Un camp de cerca Client pot fer referència a un registre de la taula Comptes o de la taula Contactes. Amb aquestes taules utilitzareu les funcions IsType i AsType, de manera que ara és un bon moment per afegir-les com a orígens de dades (podeu deixar els Equips i els Usuaris en el seu lloc).

Taules de comptes, equips, usuaris i contactes de la subfinestra Dades

El tractament dels camps Client i Propietari és tan semblant que podeu copiar literalment l'aplicació (Fitxer > Anomena i desa i, a continuació, especificar un altre nom) i fer aquests reemplaçaments simples:

Location Exemple de Propietari Exemple de Client
A Propietari "Nom del client"
A Usuaris Comptes
A Equips Contactes
Propietat Elements de la galeria Comptes Contactes
Propietat Elements del formulari Comptes Contactes
El primer argument de Patch
a la propietat OnSelect del botó
Comptes Contactes
Filtrar la propietat Elements del botó d'opcions [ "Tot", "Usuaris", "Equips" ] [ "Tot", "Comptes", "Contactes" ]
Aplicar un pedaç a la propietat Elements del botó d'opcions [ "Usuaris", "Equips" ] [ "Comptes", "Contactes" ]
Propietat Visible del quadre combinat "Usuaris" i "Equips" "Comptes" i "Contactes"

Per exemple, la galeria nova hauria de tenir aquesta propietat Elements:

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)
)

Aplicació del client derivada de l'aplicació del propietari amb canvis senzills aplicats

Dues diferències importants entre Client i propietari requereixen una actualització de les fórmules dins de la galeria i el formulari:

  1. Les relacions un a diversos entre Comptes i Contactes tenen prioritat quan feu referència a aquests tipus de taules per nom. En comptes de Comptes, utilitzeu [@Comptes]; en comptes de Contactes, utilitzeu [@Contactes]. Si utilitzeu l'operador de desambiguació global, us assegureu que feu referència al tipus de taula de IsType i AsType. Aquest problema només existeix en el context del registre de la galeria i els controls de formulari.

  2. El camp Propietari ha de tenir un valor, però pot ser que els camps Client estiguin en blanc. Per mostrar el resultat correcte sense un nom de tipus, proveu aquest cas amb la funció IsBlank i mostreu una cadena de text buida.

Tots dos canvis es mostren a la mateixa fórmula, que apareix a la targeta personalitzada al formulari, així com a la propietat Text del control de l'etiqueta de la galeria:

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'
)

Actualitzar la propietat Text del control d'etiqueta de subtítols a la galeria.

Amb aquests canvis, podeu visualitzar i canviar el camp Nom de l'empresa a la taula Contactes.

Animació que mostra com seleccionar un contacte canvia els altres controls i el formulari

Comprendre les columnes de cerca Referent a

La columna de cerca Referent a és una mica diferent dels que ja heu treballat en aquest tema. Començareu aplicant els patrons que ha descrit aquest tema abans i, a continuació, aprendreu altres trucs.

Podeu començar simplement amb la taula Faxos. Aquesta taula té una columna de cerca polimòrfica Referent a que pot fer referència a Comptes, Contactes i altres taules. Podeu agafar l'aplicació per a Clients i modificar-la per a Faxos.

Location Exemple de Client Exemple de Faxos
A "Nom del client" Referent a
Propietat Elements de la galeria Contactes Faxos
Propietat Elements del formulari Contactes Faxos
El primer argument de Patch
a la propietat OnSelect del botó
Contactes Faxos

Una vegada més, haureu d'afegir una font de dades: aquesta vegada per al Faxos. A la pestanya Visualització, seleccioneu Fonts de dades:

Subfinestra Dades que mostra taules de comptes, equips, usuaris, contactes i faxos

Una diferència important per a Referent és que no està limitada a Comptes i Contactes. De fet, la llista de taules es pot allargar amb taules personalitzades. La majoria de l'aplicació pot acomodar aquest punt sense modificació, però heu d'actualitzar la fórmula de l'etiqueta a la galeria i el formulari:

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',
    ""
)

Propietat de text actualitzada per al control de subtítols per a les cerques Referent a

Després d'haver fet aquests canvis, treballeu amb la cerca Referent igual que amb les cerques Propietari i Client.

Animació que mostra com seleccionar un element a la galeria canvia els altres controls i el formulari

Entendre les relacions Referent

Referent és diferent de Propietari i Client, perquè la primera implica una relació de diversos a un. Per definició, una relació inversa d'un a diversos us permet escriure First( Comptes ).Faxes.

Feu una còpia de seguretat i mireu les definicions de taules. Al Dataverse, les taules, com ara Faxos, Tasques, Correus electrònics, Notes, Trucades telefòmiques, Cartes i Xats es designen com activitats. També podeu crear les vostres taules d'activitats personalitzades. Quan visualitzeu o creeu una taula d'activitats, la seva configuració es mostra a Més configuració.

Configuració de la taula d'activitats en crear una taula

Altres taules poden estar relacionades amb una taula d'activitats si estan habilitades com a tasca d'activitat a la configuració de la taula. Les taules de Comptes, Contactes i moltes altres taules estàndard estan designades així (de nou, a Més configuració).

Configuració de la tasca d'activitats en crear una taula

Totes les taules d'activitats i les taules de tasques d'activitat tenen una relació implícita. Si canvieu el filtre a Tots a la part superior de la pantalla, seleccioneu la taula Faxos i, a continuació, seleccioneu la pestanya Relacions, apareixen totes les taules que poden ser una destinació d'una cerca Referent a.

Relacions de la taula Faxos que mostren relacions de diversos a un de Referent a

Si mostreu les relacions de la taula Comptes, apareixen totes les taules que poden ser un origen d'un camp de cerca Referent a.

Relacions de la taula de comptes que mostren relacions d'un a diversos de Referent a

Què significa tot això?

  • Quan escriviu fórmules, heu de tenir en compte que la llista de taules d'activitats no és fixa i que podeu crear-ne de pròpies. La fórmula ha de gestionar correctament una taula d'activitat que no esperàveu.
  • Les tasques i activitats de l'activitat tenen una relació d'un a diversos. Podeu demanar fàcilment tots els faxos que es relacionin amb un compte.

Per explorar aquest concepte a l'aplicació:

  1. Afegiu una altra pantalla.

    Inserir una pantalla en blanc.

  2. Inseriu un control de galeria, canvieu-ne la mida i, a continuació, moveu-lo cap a l'esquerra de la pantalla.

  3. A la pestanya Propietats, a prop del costat dret de la pantalla, definiu Elements de la galeria a Comptes.

    Definir Elements a Comptes a la subfinestra de propietats.

  4. Definiu la disposició de la galeria a Títol i, a continuació, definiu el camp de títol a Nom del compte.

    Definir la disposició a Títol per al control de galeria a la subfinestra de propietats.

  5. Afegiu una segona galeria, canvieu-ne la mida i, a continuació, moveu-la cap a la dreta de la pantalla.

  6. Definiu la nova propietat Elements de la galeria a Gallery2.Selected.Faxes.

    Aquest pas retorna la llista filtrada de faxos per a un compte determinat.

    Definir la propietat Elements de la galeria que mostra faxos.

  7. Definiu la disposició de la galeria a Títol i subtítol i, a continuació, definiu el camp de títol per mostrar el camp Tema (que podria ser en minúscula tema).

    Definir el títol al camp Tema.

A mesura que seleccioneu un element de la llista de comptes, la llista de faxos mostra els faxos només per a aquest compte.

Animació que mostra la selecció a la galeria de comptes proporcionant la llista de faxos.

Taula d'activitats

Com descriu la secció anterior, podeu mostrar tots els faxos d'un compte. No obstant, també podeu mostrar totes les activitats d'un compte, incloent-hi els faxos, els missatges de correu electrònic, les trucades telefòniques i altres interaccions.

Per a aquest últim escenari, utilitzeu la taula Activitat. Podeu mostrar aquesta taula activant Tot a la part superior dreta per suprimir el filtre de la llista de taules.

Llista de taules que mostra la taula d'activitats

La taula Activitat és especial. Sempre que afegiu un registre a la taula Faxos, el sistema també crea un registre a la taula Activitat amb les columnes habituals en totes les taules d'activitat. D'aquestes columnes, Tema és una de les columnes més interessants.

Podeu mostrar totes les activitats canviant només una línia a l'exemple anterior. Substituïu Gallery2.Selected.Faxes per Gallery2.Selected.Activities.

Canvi de la propietat Elements de la segona galeria, que canvia de faxos a activitats

Els registres venen de la taula Activitat, però podeu utilitzar la funció IsType igualment per identificar quin tipus d'activitat són. De nou, abans d'utilitzar IsType amb un tipus de taula, heu d'afegir una font de dades.

Subfinestra de Dades que mostra totes les taules necessàries per a la funció IsType

En utilitzar aquesta fórmula, podeu mostrar el tipus de registre en un control d'etiqueta dins de la galeria:

If( IsType( ThisItem, Faxes] ), "Fax",
    IsType( ThisItem, 'Phone Calls' ), "Phone Call",
    IsType( ThisItem, 'Email Messages' ), "Email Message",
    IsType( ThisItem, Chats ), "Chat",
    "Unknown"
)

Definir la propietat del text a fórmula per mostrar la informació dels faxos, les trucades telefòniques i altres activitats.

També podeu utilitzar AsType per accedir als camps del tipus específic. Per exemple, aquesta fórmula determina el tipus de cada activitat i, per a les trucades telefòniques, mostra el número de telèfon i la direcció de trucada des de la taula Números de telèfon:

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"
)

Propietat de text expandida amb més informació per a una trucada telefònica

En conseqüència, l'aplicació mostra una llista completa d'activitats. El camp Tema es mostra per a tots els tipus d'activitats, tant si la fórmula les té en compte com si no. Per als tipus d'activitats que coneixeu, podeu mostrar els seus noms de tipus i informació específica de tipus sobre cada activitat.

Pantalla completada que mostra informació de diversos tipus d'activitats

Taula de Notes

Fins ara, tots els exemples Referent a s'han basat en activitats, però la taula Notes representa un altre cas.

Quan creeu una taula, podeu habilitar els fitxers adjunts.

Habilitar els fitxers adjunts i les notes en crear una taula.

Si activeu la casella de selecció per habilitar els fitxers adjunts, creareu una relació Referent a amb la taula Notes, ja que aquest gràfic es mostra per a la taula Comptes:

Taula de compte que mostra la relació amb Notes mitjançant una relació d'un a diversos

A part d'aquesta diferència, utilitzeu la cerca Referent de la mateixa manera que utilitzeu les activitats. Les taules habilitades per als fitxers adjunts tenen una relació d'un a diversos amb Notes, com en aquest exemple:

First( Accounts ).Notes

Nota

A continuació, la cerca Referent a no està disponible a la taula Notes. No podeu llegir ni filtrar segons la columna Referent a i no podeu definir la columna mitjançant Pedaç.

No obstant, la relació inversa Notes d'un a diversos està disponible, de manera que podeu filtrar una llista de notes per a un registre que està habilitat per als fitxers adjunts. També podeu utilitzar la funció Relate per afegir una nota a la taula Notes d'un registre, però la nota s'ha de crear en primer lloc, com en aquest exemple:

Relate( ThisItem.Notes, Patch( Notes, Defaults( Notes ), { Title: "A new note" } ) )

Grups d'activitat

En el moment de redacció d'aquest article, les aplicacions del llenç no admeten els grups d'activitat.

Nota

Ens podeu dir quines són les vostres preferències d'idioma per a la documentació? Responeu una breu enquesta. (tingueu en compte que l'idioma de l'enquesta és l'anglès)

Trigareu uns set minuts a completar l'enquesta. No es recopilen dades personals (declaració de privadesa).