Introduzione alle entità in Microsoft Dynamics CRM 2015
Data di pubblicazione: novembre 2016
Si applica a: Dynamics CRM 2015
Le entità vengono utilizzate per modellare e gestire i dati aziendali in Microsoft Dynamics 365. Ad esempio le entità, quali account, campagna e incidente (caso) possono essere utilizzate per registrare e supportare vendite, marketing e impegni di tipo servizio. Un'entità include un set di attributi e ogni attributo rappresenta un elemento dati di un particolare tipo. Ad esempio, l'entità account ha gli attributi Name, Address e OwnerId. Dal punto di vista concettuale, un'entità è come una tabella di database e gli attributi di entità corrispondono alle colonne della tabella. La creazione di un record di entità o semplicemente un record in Microsoft Dynamics 365 consiste nell'aggiunta di una riga in una tabella di database. Le entità vengono divise in tre categorie: sistema, aziendali e personalizzate. Come uno sviluppatore che lavora con dati aziendali, si utilizzeranno entità aziendali e personalizzate. Le entità di sistema verranno utilizzate da Microsoft Dynamics 365 per gestire tutti i processi interni, ad esempio i flussi di lavoro e i processi asincroni. Non è possibile eliminare né personalizzare alcuna entità di sistema.
Le entità aziendali fanno parte dell'installazione predefinita di Microsoft Dynamics 365 e vengono visualizzate nell'interfaccia utente di personalizzazione. Un account, un contatto e una lettera sono esempi di entità aziendali. Dopo l'installazione, è possibile aggiungere entità personalizzate a Microsoft Dynamics 365 per soddisfare le esigenze aziendali specifiche dell'organizzazione. In una soluzioneMicrosoft Dynamics 365, è possibile impostare entità e attributi aziendali e personalizzati per essere personalizzabile o non personalizzabile. È possibile modificare un'entità personalizzabile rinominandola, aggiungendo nuovi attributi o modificando varie impostazioni, come il rilevamento duplicati o le impostazioni di supporto della coda. Non è possibile modificare un'entità non personalizzabile. Per ulteriori informazioni sulla personalizzazione, sulle soluzioni gestite e non gestite e le proprietà gestite, vedere Comprimere e distribuire estensioni con soluzioni.
Se si utilizza il modello della programmazione con associazione anticipata, un'entità è rappresentata da una classe, ad esempio la classe Account che rappresenta l'entità account. Gli attributi di entità sono rappresentati dalle proprietà delle classi. Questa classe viene generata dallo strumento CrmSvcUtil. Per ulteriori informazioni, vedere Utilizzare le classi di entità con associazione anticipata nel codice. In alternativa, è possibile scrivere programmi che funzionano con i dati entità utilizzando un approccio dinamico. Per ulteriori informazioni, vedere Utilizzare la classe di entità con associazione tardiva nel codice.
Nota
Nella documentazione Microsoft Dynamics CRM SDK, il termine "attributo di entità" viene utilizzato in modo intercambiabile con il termine "attributo" e il termine "proprietà" (proprietà delle classi).
In questo argomento
I metadati dell'entità
Azioni sui record dell'entità
Proprietà delle entità
Stato e motivo stato del record
Immagini di entità
I metadati dell'entità
I metadati per un'organizzazione Microsoft Dynamics 365 contengono le definizioni per le entità, gli attributi e le relazioni tra le entità. Per ulteriori informazioni, vedere Modelli di dati e metadati in Microsoft Dynamics CRM 2015. Come uno sviluppatore vi sono molti casi in cui è utile essere in grado di trovare tutti i metadati per un'organizzazione. Esistono diversi modi per trovare e fare riferimento ai metadati:
è possibile utilizzare il browser dei metadati dell'entità per visualizzare le entità e le relative proprietà in Microsoft Dynamics 365. Per informazioni dettagliate, vedere Visualizzazione dei metadati per l'organizzazione.
Il pacchetto SDK contiene le stesse informazioni disponibili in un foglio di calcolo Microsoft Office Excel. È possibile trovare questo nel file SDK\Tools\EntityMetadata.xlsx.
È possibile generare i metadati per la propria organizzazione utilizzando questi esempi:
È possibile creare i seguenti tipi di relazioni tra le entità: uno-a-molti, molti-a-uno e molti-a-molti. I record per una relazione molti-a-molti vengono archiviati in un'entità intersecata. Dopo che una relazione viene definita, utilizzare il messaggio AssociateRequest o il metodo Associate per creare un collegamento tra i record specificati e utilizzare il messaggio DisassociateRequest o il metodo Disassociate per rimuovere un collegamento tra i record specificati.
Nelle relazioni uno-a-molti o molti-a-uno, alcune azioni nel record di entità padre influiscono sui record di entità figlio. Le azioni con comportamento a catena includono: Assegna, Elimina, Unisci, Condividi, Rimuovi condivisione e Ricollega. Per ulteriori informazioni, vedere Comportamento della relazione di entità.
Nomi utilizzati nei metadati dell'entità
Le entità, gli attributi e le relazioni hanno diversi nomi. Nella tabella seguente sono elencati i diversi nomi utilizzati nei metadati.
Nome |
Descrizione |
---|---|
Nome visualizzato |
Il nome visualizzato all'utente. |
Nome della raccolta visualizzato |
Una versione plurale del nome visualizzato. Ciò si applica solo alle entità. |
Nome logico |
Il nome univoco dell'entità o dell'attributo. Questo nome è in lettere minuscole. |
Nome schema |
Il nome dello schema viene specificato alla creazione. Deve essere univoco. Viene utilizzato per creare il nome logico. Questo nome deve essere in Pascal case. Il nome dello schema viene utilizzato per creare la classe per l'entità quando si utilizza la programmazione con associazione anticipata. |
Nota
Per un'entità personalizzata, un attributo e una relazione creata nel contesto di una soluzione, il prefisso di personalizzazione nei nomi di schema e logici è definito nell'attributo Publisher.CustomizationPrefix. Per un'entità personalizzata creata a livello di programmazione, impostare il prefisso di personalizzazione su una stringa di lunghezza compresa tra due e otto caratteri, con tutti i caratteri alfanumerici che iniziano con una lettera. Non può iniziare con "mscrm". Per ulteriori informazioni sulla personalizzazione dei metadati e le convenzioni di denominazione per un'entità, vedere Personalizzare i metadati dell'entità.
Azioni sui record dell'entità
Ogni entità supporta diverse azioni, ad esempio creare o eliminare un record o assegnare un record a un altro utente o team. Non tutte le azioni sono consentite per tutti i tipi di entità o attributi. Per ogni attributo, i metadati definiscono un'azione specificata è supportata. Ad esempio, le proprietà di un attributo, come IsValidForCreate, IsValidForRead e IsValidForUpdate dicono se è possibile creare, recuperare o aggiornare l'attributo.Ulteriori informazioni:Operazioni valide negli attributi.
Per eseguire un'azione, chiamare uno dei metodi descritti in IOrganizationService. Ad esempio, per creare un record in Microsoft Dynamics 365, è possibile utilizzare IOrganizationService. Metodo Create o IOrganizationService. Metodo Execute con il messaggio corrispondente CreateRequest. È necessario disporre dei privilegi e i diritti di accesso necessari per eseguire tali azioni. Per ulteriori informazioni, vedere Modello di sicurezza di Microsoft Dynamics CRM 2015.
Nella tabella seguente sono elencate le azioni che sono consentite sui record di entità personalizzate e aziendali e sui metodi e messaggi che è possibile utilizzare per eseguire tali azioni.
Azione |
Descrizione |
Metodo e/o messaggio |
---|---|---|
Crea |
Crea un record di un tipo di entità specifico, incluse le entità personalizzate. |
|
Aggiorna |
Modifica il contenuto di un record. |
|
Eliminazione |
Elimina un record. |
|
Recupero |
Recupera un record. |
|
Recuperare multipli |
Recupera una raccolta di record. |
|
Assegna |
Modifica la proprietà di un record. Valido per entità di proprietà dell'utente o di proprietà del team. |
|
Condivisione |
Concede, modifica o revoca l'accesso a un record a un altro utente o team. Valido per entità di proprietà dell'utente o di proprietà del team. |
|
Associata |
Crea collegamenti tra un record e una raccolta di record in cui esiste una relazione tra entità. |
|
Annulla associazione |
Rimuove collegamenti tra un record e una raccolta di record in cui esiste una relazione tra entità. |
|
Impostazione stato |
Impostare lo stato di un record. |
Crea
Per eseguire questa azione, il chiamante deve disporre di Create message privileges. I diritti di accesso non si applicano all'azione Crea, ma vengono applicati al record dopo la creazione.
Per essere proprietario di un record o per recuperare il record appena creato, un utente o un team deve inoltre leggere i privilegi e i diritti di accesso nel nuovo record. Ad esempio, se si dispone di privilegi di creazione per gli account, è possibile creare un record di account e assegnarlo a un altro utente o team. Tuttavia, a meno che non si disponga anche di privilegi di lettura per gli account e i diritti di accesso al nuovo record, non è possibile creare un account ed essere il proprietario di tale nuovo account.
Aggiorna
Per eseguire questa azione, il chiamante deve disporre di Update message privileges e dei diritti di accesso per i record di entità che vengono aggiornati.
Quando si aggiorna un record, solo gli attributi per i quali si specificano dati o si specifica null vengono aggiornati. Tutti gli altri valori rimangono gli stessi. Inoltre, se si specificano i dati per gli attributi non validi per l'aggiornamento, vengono ignorati.
Eliminazione
Per eseguire questa azione, il chiamante deve disporre di Delete message privileges e dei diritti di accesso per i record di entità che vengono eliminati.
Le regole a catena determinano se i record correlati vengono eliminati contemporaneamente. Per ulteriori informazioni, vedere Comportamento della relazione di entità.
In genere, è consigliabile eliminare solo i record immessi accidentalmente. Per alcuni tipi di record è possibile invece disattivare o chiudere il record, anziché eliminarlo. Non tutti i tipi di record possono essere eliminati.
Recupero
Per eseguire questa azione, il chiamante deve disporre di Retrieve message privileges e dei diritti di accesso per i record di entità che vengono recuperati.
Recuperare multipli
Per eseguire questa azione, il chiamante deve disporre di Retrieve message privileges e dei diritti di accesso per i record di entità che vengono recuperati.
Per recuperare una raccolta di record in base ai parametri della query, è possibile utilizzare un'espressione di query o un linguaggio di query FetchXML. Le espressioni di query consentono di creare un albero di query utilizzando una gerarchia di classe. I metodi che utilizzano un'espressione di query restituiscono una raccolta di record tipizzati fortemente. FetchXML consente di creare una query utilizzando un linguaggio XML. FetchXML restituisce una stringa XML. Pertanto, è necessario eseguire un'ulteriore manipolazione dei dati per utilizzare i risultati della query. Per ulteriori informazioni, vedere Recuperare i dati con le query.
Assegna
Per le entità di proprietà dell'utente o di proprietà del team, si assegna un record a un nuovo proprietario. Per ulteriori informazioni, vedere Proprietà delle entità. Per eseguire questa azione, il chiamante deve disporre di Assign message privileges e dei diritti di accesso per i record di entità.
Le regole a catena determinano se i record correlati vengono assegnati a un altro utente contemporaneamente. Per ulteriori informazioni, vedere Comportamento della relazione di entità.
Quando si assegna un record a un altro utente o team, il proprietario precedente dispone ancora di accesso a questo record se l'attributo ShareToPreviousOwnerOnAssign è impostato su true. Tuttavia, il proprietario precedente non sarà più il proprietario del record.
Condivisione
Per le entità di proprietà dell'utente o di proprietà del team, è possibile condividere un record con altri utenti o team. Per eseguire questa azione, il chiamante deve disporre di GrantAccess message privileges, ModifyAccess message privileges e RevokeAccess message privileges, e dei diritti di accesso per i record di entità.
Le regole a catena determinano se i record correlati vengono condivisi contemporaneamente. Per ulteriori informazioni, vedere Comportamento della relazione di entità
La condivisione è il modo in cui gli utenti di Microsoft Dynamics 365 possono fornire ad altri utenti l'accesso a informazioni sui clienti in base alle esigenze. Ad esempio, un venditore può scegliere di condividere un'opportunità con un altro venditore affinché entrambi possano registrare l'andamento di una vendita importante.
Utilizzare GrantAccessRequest per condividere un record. Utilizzare ModifyAccessRequest per modificare la modalità di condivisione di un record. Utilizzare RevokeAccessRequest per rimuovere tutte le condivisioni per il record.
Un utente deve disporre dei diritti di condivisione per condividere i record relativi ai clienti, ad esempio contatti, account, opportunità, casi e ordini, con qualsiasi altro utente in Microsoft Dynamics 365. Quando un record viene condiviso, è possibile specificare i diritti da concedere per il record condiviso.
L'elenco seguente descrive le regole per la condivisione di record:
Qualsiasi utente con privilegi di condivisione per un record può condividerlo con utenti o team aggiuntivi.
Qualsiasi utente con privilegi di condivisione per un record può impostare i diritti di accesso per tale record. Questi diritti di accesso controllano come un utente che condivide un record può accedere a tale record.
L'accesso a un record condiviso può essere impostato a qualsiasi diritto di accesso, ad esempio lettura o scrittura.
I diritti di accesso a un record condiviso possono variare per ogni utente con cui è condiviso il record.
Un record può essere condiviso con la stessa entità di sicurezza una sola volta. Un utente può condividere un record se dispone di privilegi di condivisione per tale record.
Qualsiasi utente con privilegi di condivisione per un record aziendale può modificare i diritti di accesso per gli utenti che hanno il record condiviso.
Qualsiasi utente con privilegi di condivisione per un record aziendale può rimuovere la condivisione per un utente specificato che ha il record condiviso.
Qualsiasi utente con privilegi di condivisione per un record aziendale può rimuovere la condivisione per tutti gli utenti con cui il record era precedentemente condiviso.
Associata
Per eseguire questa azione, il chiamante deve disporre di Associate message privileges e dei diritti di accesso per i record che vengono aggiornati.
Associa crea più associazioni in una transazione tra il record specificato e ogni record nella raccolta specificata per la relazione specificata.
Per una relazione uno-a-molti, questo metodo imposta ReferencingAttribute nel record correlato all'ID del record specificato.
Per una relazione molti-a-molti, questo metodo crea un record nella tabella intersecata per la relazione, contenente un ID dei record di riferimento e cui si fa riferimento. Il nome della tabella intersecata è definito nella proprietà IntersectEntityName per la relazione.
Annulla associazione
Per eseguire questa azione, il chiamante deve disporre di Disassociate message privileges e dei diritti di accesso per i record che vengono aggiornati.
Annulla associazione annulla l'operazione di associazione, aggiornando i record di riferimento e cui si fa riferimento ed eliminando il record intersecato nei casi appropriati. Per ulteriori informazioni, vedere Associata.
Impostazione stato
Per eseguire questa azione, il chiamante deve disporre di SetState message privileges e dei diritti di accesso per i record che vengono aggiornati. Il messaggio SetStateRequest aggiorna gli attributi StatusCode e StateCode del record di entità.
Proprietà delle entità
Esistono diversi tipi di proprietà delle entità. La maggior parte delle entità, incluse le entità personalizzate, sono di proprietà dell'organizzazione, di un utente o un team. Alcune entità aziendali non hanno un proprietario, ad esempio il tipo di sconto (elenco sconti), dove la proprietà è definita dallo sconto dell'entità padre. Il tipo di proprietà definisce alcune delle operazioni che possono essere eseguite su un record. La proprietà per un'entità è definita nella proprietà dei metadati OwnershipType. La tabella seguente elenca le proprietà di proprietà.
Tipo di proprietà |
Descrizione |
---|---|
Di proprietà dell'organizzazione |
Contiene i dati che includono ciò che appartiene all'intera organizzazione o che essa può visualizzare. Non è possibile assegnare o condividere entità di proprietà dell'organizzazione. Ad esempio, i prodotti sono di proprietà dell'organizzazione. Queste entità hanno un attributo denominato organizationid. |
Di proprietà dell'azienda |
Entità che appartengono a una business unit. Queste entità hanno un attributo denominato owningbusinessunit. |
Entità di proprietà dell'utente o del team. |
Assegnato a un utente o a un team. Queste entità contengono i dati relativi ai clienti, ad esempio account o contatti. La protezione può essere definita in base alla business unit per l'utente o il team. Queste entità hanno attributi denominati owningteam e owninguser. |
Nessuno |
Queste entità non sono di proprietà di un'altra entità. |
Ulteriori informazioni sulla Proprietà dell'utente o del team
È possibile utilizzare il messaggio AssignRequest per modificare la proprietà di un record. Per ulteriori informazioni, vedere Assegna. È possibile utilizzare il messaggio ReassignObjectsSystemUserRequest o ReassignObjectsOwnerRequest per effettuare la riassegnazione in blocco di tutti i record per un proprietario.
Nota
Se si limita la proprietà a utenti o team, si restringe l'accesso ai dati per gli utenti autorizzati nell'organizzazione. Tuttavia, è possibile espandere l'accesso ai dati ad utenti e team aggiuntivi condividendo un record di entità con loro. È inoltre possibile assegnare un record a un altro utente o team. La configurazione della protezione per le entità di proprietà dell'utente o di proprietà del team offre più livelli di accesso per i ruoli di sicurezza che per le entità di proprietà dell'organizzazione. I ruoli di sicurezza per le entità di proprietà dell'organizzazione hanno due livelli di accesso: Nessuno e Globale. Le entità di proprietà dell'utente o di proprietà del team hanno cinque livelli di accesso: Globale, Esteso, Locale, Di base e Nessuno.
Stato e motivo stato del record
La maggior parte delle entità aziendali hanno due proprietà per registrare lo stato di un record. Queste sono StateCode, denominato Stato nell'applicazione Web e StatusCode, denominato Motivo stato nell'applicazione Web. I valori degli attributi StatusCode e StateCode sono collegati. L'attributo StateCode è utilizzato internamente per rappresentare lo stato dell'entità. L'attributo StatusCode è utilizzato per visualizzare il valore all'utente finale. Il set dei codici di stato validi per un'entità non è personalizzabile, ma i codici di stato sono personalizzabili. Per l'entità caso e le entità personalizzate, è possibile definire ulteriori criteri per le transizioni valide tra gli stati. Per ulteriori informazioni, vedere Personalizzare i metadati degli attributi di entità e Definire le transizioni personalizzate del modello di stato.
Immagini di entità
Alcune entità di sistema dispongono di attributi di immagine. È possibile aggiungere attributi di immagine a entità personalizzate. Quando un'entità dispone di un attributo di immagine, è possibile impostare la proprietà PrimaryImageAttribute per controllare se l'immagine verrà visualizzata nell'applicazione. Quando l'immagine viene visualizzata nell'applicazione gli utenti dell'applicazione Web possono caricare le immagini per il record dell'entità. Le seguenti entità di sistema dispongono di attributi di immagine. Quelli contrassegnati da un asterisco sono abilitati per impostazione predefinita per mostrarli nell'applicazione.
Account * |
KbArticle |
Campagna |
Caso |
Concorrente * |
Connessione |
Contatto * |
Contratto |
TransactionCurrency |
EmailServerProfile |
Obiettivo |
Fattura |
Lead * |
Cassetta postale |
Prodotto opportunità |
SalesOrder |
Organizzazione |
Prodotto * |
Autore * |
Coda |
Risorsa * |
SalesLiterature |
Area |
SystemUser * |
Ulteriori informazioni:Attributi dati di immagine.
Vedere anche
Entità di sicurezza e amministrazione
Utilizzare i metadati per generare diagrammi di entità
Definire le transizioni personalizzate del modello di stato
Chiave diagrammi di entità
Modellare i dati aziendali
Personalizzare i metadati delle relazioni di entità
Comportamento della relazione di entità
Modelli di dati e metadati in Microsoft Dynamics CRM 2015
Estendere il modello dei metadati
Comprimere e distribuire estensioni con soluzioni
Entità IOrganizationService
Modello di sicurezza di Microsoft Dynamics CRM 2015
Esempio: impostare e recuperare le immagini di entità
Esempio: assegnare un record a un team
Esempio: condividere i record con i messaggi GrantAccess, ModifyAccess e RevokeAccess
Esempio: Unire due record
Esempio: convalidare uno stato del record e impostare lo stato del record
Esempio: record di rollup correlati a un record specifico
© 2017 Microsoft. Tutti i diritti sono riservati. Copyright