Relacions de taula del Microsoft Dataverse

Les relacions de taula del Microsoft Dataverse defineixen les maneres en què les files de taula es poden associar amb files d'altres taules o de la mateixa taula. Hi ha dos tipus de relacions de taula:

Relacions d'un a diversos

En una relació de taula d'un a diversos, es poden associar moltes files de taula de referència (relacionades) amb una sola fila de taula referenciada (principal). La fila de la taula referenciada de vegades es coneix com a "pare" i les files de la taula de referència es coneixen com a "files". Una relació de diversos a un és només la perspectiva infantil d'una relació d'un a molts.

Per exemple, en un escenari escolar es poden impartir diversos cursos en una sola aula, de manera que la taula de classe tindria una relació d'un a diversos amb la taula del curs.

Relacions de diversos a diversos

En una relació de taula de diversos a diversos, moltes files de taula es poden associar amb moltes altres files de taula. Les files relacionades mitjançant una relació de diversos a diversos es poden considerar iguals i la relació és recíproca.

Per exemple, en el mateix escenari escolar esmentat anteriorment, un sol estudiant es pot inscriure en diversos cursos i cada curs pot tenir diversos estudiants. Aquest tipus de relació permet associacions de dades més complexes i s'administra mitjançant el Power Apps al Dataverse.

Com funcionen les relacions al Dataverse

Les relacions de taula defineixen com es poden relacionar les files de taula entre si al Dataverse. En el nivell més senzill, afegir una columna de cerca a una taula crea una nova relació 1:N (un a diversos) entre les dues taules i us permet col·locar aquesta columna de cerca en un formulari. Amb la columna de cerca, els usuaris poden associar diverses files secundàries d'aquesta taula a una sola fila de taula principal .

Més enllà de simplement definir com es poden relacionar les files amb altres files, les relacions de taula 1:N també proporcionen dades per respondre a les preguntes següents:

  • Quan esborro una fila, també s'han d'eliminar les files relacionades amb aquesta fila?
  • Quan assigno una fila, també he d'assignar totes les files relacionades amb aquesta fila al nou propietari?
  • Com puc racionalitzar el procés d'entrada de dades quan creo una nova fila relacionada en el context d'una fila existent?
  • Com han de poder veure les files associades les persones que visualitzen una fila?

Les taules també poden participar en una relació N:N (diversos a diversos) on qualsevol nombre de files per a dues taules es poden associar entre si.

Decidir si voleu utilitzar relacions de taula o connexions

Les relacions de taula són metadades que fan canvis al Dataverse. Aquestes relacions permeten que les consultes recuperin dades relacionades de manera eficient. Utilitzeu relacions de taula per definir relacions formals que defineixen la taula o que la majoria de files poden utilitzar. Per exemple, una oportunitat sense un client potencial no seria útil. La taula d'oportunitats del Dynamics 365 for Sales també té una relació N:N amb la taula de la competència, també disponible amb el Dynamics 365 for Sales. Això permet afegir diversos competidors a l'oportunitat. És possible que vulgueu capturar aquestes dades i crear un informe que mostri els competidors.

Hi ha altres tipus menys formals de relacions entre files que s'anomenen connexions. Per exemple, pot ser útil saber si dos contactes estan casats, o potser són amics fora de la feina, o potser un contacte solia treballar per a un altre compte. La majoria de les empreses no generaran informes amb aquest tipus d'informació ni requeriran que s'introdueixi, de manera que probablement no valgui la pena crear relacions de taula. Més informació: Configurar les funcions de connexió

Tipus de relacions de taula

Quan visualitzeu relacions al Power Apps, podeu pensar que hi ha tres tipus de relacions de taula. En realitat només n'hi ha dos, com es mostra a la taula següent.

Tipus de relació Descripció
1:N (D'un a molts) Relació de taula en què una fila de taula principal es pot associar a moltes altres files de taula relacionada a causa d'una columna de cerca a la taula relacionada.

Quan visualitzeu una fila de taula principal, podeu veure una llista de les files de taula relacionades que hi estan associades.

Al portal del Power Apps, la taula actual representa la taula principal.
N:N (de diversos a diversos) Relació de taula que depèn d'una taula de relació especial, de vegades anomenada taula d'intersecció, de manera que moltes files d'una taula es poden relacionar amb moltes files d'una altra taula.

Quan visualitzeu files de qualsevol taula en una relació N:N, podeu veure una llista de les files de l'altra taula relacionades amb ella.

El tipus de relació N:1 (diversos a un) existeix a la interfície d'usuari perquè el dissenyador mostra una visualització agrupada per taules. 1:N relacions existeixen realment entre taules i es refereixen a cada taula com a taula principal/actual o taula relacionada. La taula relacionada, de vegades anomenada taula filla , té una columna de cerca que permet emmagatzemar una referència a una fila de la taula principal, de vegades anomenada taula principal . Una relació N:1 és només una relació 1:N vista des de la taula relacionada.

Comportament de la relació de taula

Els comportaments de les taules relacionades són importants perquè ajuden a garantir la integritat de les dades i poden automatitzar els processos de negoci.

Preservar la integritat de les dades

Algunes taules existeixen per donar suport a altres taules. No tenen sentit per si sols. Normalment tindran una columna de cerca obligatòria per enllaçar a la taula principal que admeten. Què ha de passar quan se suprimeix una fila principal?

Podeu utilitzar el comportament de la relació per definir què passa amb les files relacionades segons les regles de la vostra empresa. Més informació: Afegeix un comportament de relació avançat

Automatitza els processos de negoci

Suposem que teniu un comercial nou i voleu assignar-li un nombre de comptes existents assignats actualment a un altre comercial. Cada fila del compte pot tenir una sèrie d'activitats de tasca associades. Podeu localitzar fàcilment els comptes actius que voleu reassignar i assignar-los al nou comercial. Però, què hauria de passar amb qualsevol de les activitats de tasca associades amb els comptes? Voleu obrir cada tasca i decidir si també s'han d'assignar al nou comercial? Probablement, no. En comptes d'això, podeu deixar que la relació apliqui regles estàndards automàticament. Aquestes regles només s'apliquen a les files de tasques associades als comptes que esteu reassignant. Les opcions són:

  • Torna a assignar totes les tasques actives.
  • Torna a assignar totes les tasques.
  • No tornis a assignar cap tasca.
  • Reassigneu totes les tasques assignades actualment a l'antic propietari dels comptes.

La relació pot controlar com les accions dutes a terme en una fila de la fila de la taula principal es col·loquen en cascada a les files de la taula relacionada.

Comportaments

Hi ha diversos tipus de comportaments que es poden aplicar quan es produeixen determinades accions.

Comportament Descripció
Cascada activa Realitza l'acció en totes les files de taula relacionades actives.
Cascada de tots Realitza l'acció en totes les files de taula relacionades.
Cascada Cap No facis res.
Suprimeix l'enllaç Suprimiu el valor de la cerca per a totes les files relacionades.
Restringir Impedeix que la fila de la taula principal se suprimeixi si hi ha files de taula relacionades.
Propietat de l'usuari en cascada Realitza l'acció en totes les files de taula relacionades que són propietat del mateix usuari com a fila de la taula principal.

Accions

Aquestes són les accions que poden provocar certs comportaments:

Columnes Descripció Opcions
Assignar Què passa quan la fila de la taula principal s'assigna a algú altre? Posa totes en cascada
Posa l'activa en cascada
Posa en cascada les que pertanyin a l'usuari
No en posis cap en cascada
Torna a ser pare Què hauria de passar quan es canvia un valor de cerca d'una taula relacionada en una relació parental?
Més informació: Relacions de taula parental
Posa totes en cascada
Posa l'activa en cascada
Posa en cascada les que pertanyin a l'usuari
No en posis cap en cascada
Compartir Què passa quan es comparteix la fila de taula principal? Posa totes en cascada
Posa l'activa en cascada
Posa en cascada les que pertanyin a l'usuari
No en posis cap en cascada
Esborrar Què passa quan se suprimeix la fila de taula principal? Posa totes en cascada
Suprimeix l'enllaç
Restringeix
Deixa de compartir Què passa quan es deixa de compartir una fila de taula principal? Posa totes en cascada
Posa l'activa en cascada
Posa en cascada les que pertanyin a l'usuari
No en posis cap en cascada
Fusionar Què passa quan es combina una fila de taula principal? Posa totes en cascada
No en posis cap en cascada
Vista d'informe Quin és el comportament desitjat de la visualització de valor consolidat associada amb aquesta relació? Posa totes en cascada
Posa l'activa en cascada
Posa en cascada les que pertanyin a l'usuari
No en posis cap en cascada

Nota

Les accions d'assignació, supressió, combinació i reorientació principal no s'executen en les situacions següents:

  • Si la fila principal original i l'acció sol·licitada contenen els mateixos valors. Exemple: intentar activar una assignació i triar un contacte que ja sigui el propietari de la fila.
  • Intent de realitzar una acció en una fila principal que ja està executant una acció en cascada.

Quan s'executa una assignació, els fluxos de treball o les regles de negoci que estiguin actius a les files es desactiven automàticament quan es produeix la reassignació. El nou propietari de la fila ha de reactivar el flux de treball o la regla de negoci si vol continuar utilitzant-lo.

Relacions de taula jeràrquiques

Cada parell de taules que pot optar a tenir una relació d'1:N pot tenir diverses relacions 1:N entre ells. Encara que normalment només una d'aquestes relacions es pot considerar una relació de taula jeràrquica.

Una relació de taula parental és qualsevol relació de taula 1:N on una de les opcions en cascada de la columna Parental de la taula següent és certa.

Acció Jeràrquica No jeràrquica
Assignar Posa totes en cascada
Posa en cascada les que pertanyin a l'usuari
Posa l'activa en cascada
No en posis cap en cascada
Esborrar Posa totes en cascada Suprimeix l'enllaç
Restringeix
Torna a ser pare Posa totes en cascada
Posa en cascada les que pertanyin a l'usuari
Posa l'activa en cascada
No en posis cap en cascada
Compartir Posa totes en cascada
Posa en cascada les que pertanyin a l'usuari
Posa l'activa en cascada
No en posis cap en cascada
Deixa de compartir Posa totes en cascada
Posa en cascada les que pertanyin a l'usuari
Posa l'activa en cascada
No en posis cap en cascada

Per exemple, si creeu una taula personalitzada nova i afegiu una relació de taula 1:N amb la taula de comptes on la taula personalitzada és la taula relacionada, podeu configurar les accions d'aquesta relació de taula per utilitzar les opcions de la columna Parental . Si més endavant afegiu una altra relació de taula 1:N amb la vostra taula personalitzada com a taula de referència, només podeu configurar les accions per utilitzar les opcions de la columna No parental .

Normalment això vol dir que per a cada parell de taules només hi ha una relació parental. Hi ha alguns casos en què la cerca a la taula relacionada pot permetre una relació amb més d'un tipus de taula.

Per exemple, si una taula té una cerca de client que pot fer referència a una taula de contactes o de comptes. Hi ha dues relacions de taula 1:N jeràrquiques independents.

Totes les taules d'activitat tenen un conjunt semblant de relacions de taula jeràrquica per a les taules que es poden associar amb la columna de cerca referent.

Limitacions dels comportaments que es poden definir

A causa de les relacions parentals, hi ha algunes limitacions, que heu de tenir en compte quan definiu relacions de taula.

  • Una taula personalitzada no pot ser la taula principal en una relació amb una taula del sistema relacionada que es propaga en cascada. Això vol dir que no podeu tenir cap relació amb cap acció definida com a Cascade All, Cascade Active o Cascade User-Owned entre una taula personalitzada principal i una taula del sistema relacionada.
  • Cap relació nova pot tenir cap acció definida com a Tot en cascada, Actiu en cascada o Propietat de l'usuari en cascada si la taula relacionada d'aquesta relació ja existeix com a taula relacionada en una altra relació que tingui alguna acció definida com a Tots en cascada, Actiu en cascada o Propietat de l'usuari en cascada. D'aquesta manera s'eviten les relacions que puguin crear una relació de diversos elements principals.

Neteja dels drets d'accés heretats

L'ús de comportaments en cascada de Reparent i Share és útil quan voleu proporcionar accés a files de taules relacionades. Però pot haver-hi un canvi en el procés o disseny que requereixi un canvi de la configuració del comportament en cascada.

Quan una relació de taula utilitza Reparent o Share i el comportament en cascada es canvia a Cascade None, la relació de taula impedeix que els nous canvis de permisos es portin en cascada a les taules secundàries relacionades. A més, s'han de revocar els permisos heretats que es van concedir mentre el comportament en cascada estava actiu.

La neteja dels drets d'accés heretats és una feina del sistema que neteja els drets d'accés heretats heretats que queden després que el comportament en cascada es canviï a Cascade Cap. Aquesta neteja no afecta cap usuari a qui se li ha concedit accés directament a una taula, però elimina l'accés a qualsevol persona que hagi rebut accés només per herència.

Així és com funciona la neteja dels drets d'accés heretats:

  1. Identifica i recull totes les taules que estaven en una relació en cascada amb l'element principal actualitzat.
  2. Identifica i recull els usuaris als quals se'ls va concedir accés a les taules relacionades mitjançant l'accés heretat.
  3. Comprova si hi ha usuaris als quals se'ls ha donat accés directe a una taula relacionada i els suprimeix de la col·lecció.
  4. Suprimeix l'accés heretat dels usuaris recollits a les taules recollides.

Després de la neteja, els usuaris que podien accedir a les taules relacionades només a causa de la característica en cascada ja no poden accedir a les files, garantint una major seguretat. Hi ha casos en què la neteja pot no tenir èxit. Obtén més informació sobre com pots netejar l'accés heretat

Vegeu també

Supervisar les feines del sistema
Crear i editar relacions 1:N (d'un a diversos) o N:1 (de diversos a un)
Crea relacions de taula de diversos a diversos (N:N)