Introduzione agli attributi di entità di Microsoft Dynamics 365
Data di pubblicazione: gennaio 2017
Si applica a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online
Le entità includono un set di attributi che rappresenta i dati che è possibile includere in ogni record. Gli sviluppatori devono comprendere i diversi tipi di attributi e come utilizzarli. I metadati per gli attributi descrivono le operazioni e i comportamenti validi dei diversi tipi di attributi. Diversi tipi di attributi possono essere raggruppati da comportamenti comuni.
L'esperienza specifica degli sviluppatori dipende dallo stile di sviluppo scelto.Ulteriori informazioni:Programmazione dell'entità (associazione anticipata rispetto ad associazione tardiva rispetto a estensioni per sviluppatori).
Nota
In questo argomento sono inclusi i riferimenti a molte proprietà dei metadati.Per visualizzare i metadati di entità per l'organizzazione, installa la soluzione Browser di metadati descritta in Visualizzazione dei metadati per l'organizzazione. Puoi inoltre visualizzare i metadati per un'organizzazione non personalizzata nel file Excel EntityMetadata.xlsx incluso nella cartella di livello superiore di Download degli SDK.
In questo argomento
Operazioni valide negli attributi
Tipi di attributi
Attributi dati di categorizzazione
Attributi dei dati di raccolta
Attributo dati di data e ora
Attributi dati di immagine
Attributi dati di quantità
Attributi di dati di riferimento
Attributi dati di stringa
Attributi dei dati dell'identificatore univoco
Attributi virtuali
Attributi logici
Operazioni valide negli attributi
Ogni attributo dispone dei metadati che descrivono le operazioni supportate. È necessario essere a conoscenza delle operazioni valide per gli attributi che si utilizzano.
Proprietà AttributeMetadata |
Descrizione |
---|---|
True se il valore di questo attributo è valido per essere impostato quando viene creato un record, in caso contrario false. |
|
True se è possibile recuperare il valore di questo attributo, in caso contrario false. |
|
True se il valore di questo attributo è valido per essere impostato quando viene aggiornato un record, in caso contrario false. |
Tipi di attributi
Gli attributi vengono definiti nei metadati e la proprietà AttributeMetadata.AttributeTypeName contiene il valore che descrive il tipo. I membri AttributeTypeDisplayName statici offrono l'elenco dei tipi possibili.
Nota
La proprietà AttributeType precedente contiene dati che sono principalmente allineati con AttributeTypeName, fatta eccezione per il fatto che illustra gli attributi ImageType come Virtual. È necessario utilizzare la proprietà AttributeTypeName piuttosto che la proprietà AttributeType.
Nella seguente sezione sono raggruppati i tipi di attributi nelle seguenti categorie in modo da poterli confrontare più facilmente:
Attributi dati di categorizzazione
Attributi dei dati di raccolta
Attributo dati di data e ora
Attributi dati di immagine
Attributi dati di quantità
Attributi di dati di riferimento
Attributi dati di stringa
Attributi dei dati dell'identificatore univoco
Attributi virtuali
Attributi dati di categorizzazione
Ognuno dei cinque attributi in questo gruppo ereditano da una classe di base EnumAttributeMetadata comune e utilizzano un set predefinito di valori validi per raggruppare record in categorie.
Impostare gli attributi di tipo picklist, status e state utilizzando un oggetto OptionSetValue con un set di proprietà Value su un valore intero che rappresenta un'opzione valida nei metadati.
Impostare gli attributi booleani utilizzando un valore booleano, ma riconoscere che si tratta di una categorizzazione limitata a solo due opzioni.
Gli attributi EntityName utilizzano un valore di stringa vincolato ad essere un nome logico dell'entità valido nell'organizzazione.
Gli attributi di tipo picklist e boolean personalizzati possono essere definiti come attributi calcolati.Ulteriori informazioni:Attributi calcolati.
Tipo metadati |
Valore AttributeTypeName |
Descrizione |
---|---|---|
PicklistType |
I valori validi sono impostati in OptionMetadata.Value per tale attributo definito in OptionSetMetadata.Options. Negli strumenti di personalizzazione dell'applicazione tali attributi sono chiamati campi Set di opzioni. |
|
StatusType |
Tali attributi di sistema in genere sono denominati StatusCode. I valori validi sono impostati in StatusOptionMetadata.Value per tale attributo definito in OptionSetMetadata.Options. La proprietà StatusOptionMetadata.State per ogni opzione descrive il valore valido per il valore corrispondente StateCode. Prima di impostare StatusCode è consigliabile verificare che sia valida per il valore StateCode corrente. Utilizzare il messaggio SetStateRequest per impostare i valori di attributo StateCode e StatusCode quando è necessario modificare lo stato del record. Questi attributi possono avere ulteriori restrizioni in cui possono essere impostati i valori. La proprietà StatusOptionMetadata.TransitionData può includere informazioni in base alle opzioni consentite quando il valore EntityMetadata.EnforceTransitions è true.Ulteriori informazioni:Definire le transizioni personalizzate del modello di stato. |
|
StateType |
Tali attributi di sistema in genere sono denominati StatusCode. I valori validi sono impostati in StateOptionMetadata.Value per tale attributo definito in OptionSetMetadata.Options. StateCode non è valido per l'aggiornamento. Dopo aver creato il record, StateCode può essere impostato solo tramite il messaggio SetStateRequest. La proprietà StateOptionMetadata.DefaultStatus per ogni opzione descrive lo StatusCode predefinito che verrà utilizzato se non impostato come parametro in SetStateRequest. |
|
BooleanType |
Gli attributi boolean possono essere impostati direttamente utilizzando un valore booleano, ma come gli altri hanno anche una proprietà OptionSet con le proprietà FalseOption e TrueOption che corrispondono alle opzioni booleane. Ognuna di queste proprietà definisce un set di etichette localizzate che rappresentano cosa significano true e false per l'attributo. Negli strumenti di personalizzazione nell'applicazione tali attributi sono chiamati campi Due opzioni perché il significato di ogni opzione può essere qualsiasi coppia di opzioni che si esclude reciprocamente, non solo true o false. Ad esempio, le opzioni potrebbero essere big e small. |
|
EntityNameType |
Tali attributi di sistema sono in genere abbinati a un attributo di riferimento o a un identificatore univoco valido per più tipi. Il valore di questo attributo è un valore stringa che rappresenta il nome logico di un'entità. Se l'attributo di riferimento corrispondente è EntityReference, il valore di questo attributo è lo stesso del valore di proprietà EntityReference.Name. |
Attributi dei dati di raccolta
Talli attributi di sistema restituiscono le raccolte di valori.
Valore di AttributeTypeName |
Descrizione |
---|---|
CalendarRulesType |
Nessun esistono attributi effettivi che utilizzano CalendarRulesType. Quando si utilizza lo stile di associazione anticipata, lo strumento di generazione del codice creerà i due seguenti attributi simulati che non sono presenti nei metadati. Questi attributi rappresentano effettivamente una visualizzazione dei record delle regole di calendario associati in una relazione uno-a-molti all'istanza di entità.
|
PartyListType |
Gli attributi seguenti consentono a più oggetti EntityReference di essere impostati per vari tipi di impegni. ActivityPointer.allparties |
Attributo dati di data e ora
Attributi con il valore di metadati AttributeTypeName di DateTimeType. Impostare questi attributi utilizzando System.DateTime.
La proprietà DateTimeAttributeMetadata.Format può essere uno dei seguenti valori DateTimeFormat:
DateAndTime: visualizzare la data e l'ora di rientro.
DateOnly: visualizzare solo la data
Gli attributi di tipo date and time personalizzati possono essere definiti come attributi calcolati o di rollup.Ulteriori informazioni:Attributi calcolati e di rollup.
Attributi dati di immagine
Per le entità che supportano gli attributi di immagini, l'oggetto SchemaName dell'attributo di immagine dell'entità è sempre EntityImage.
Ulteriori informazioni:Attributi di immagine, Immagini di entità e Esempio: impostare e recuperare le immagini di entità.
Attributi dati di quantità
Gli attributi in questa categoria utilizzano i dati numerici. Ognuno di questi attributi include una proprietà dei metadati MinValue e MaxValue per impostare un intervallo di valori validi.
Gli attributi di tipo decimal, integer e money personalizzati possono essere definiti come attributi calcolati o di rollup.Ulteriori informazioni:Attributi calcolati e di rollup.
Tipo metadati |
Valore di AttributeTypeName |
Descrizione |
---|---|---|
BigIntType |
Gli attributi BigInt sono solo per uso interno. |
|
DecimalType |
Utilizzare i valori decimali. La proprietà dei metadati Precision imposta la precisione da utilizzare per l'attributo. |
|
DoubleType |
Utilizzare i valori doppi. La proprietà dei metadati Precision imposta la precisione da utilizzare per l'attributo. |
|
IntegerType |
Utilizzare i valori int. |
|
MoneyType |
Utilizzare Money che include una proprietà decimalValue. Ogni attributo di tipo money ha un attributo di tipo money della valuta di base calcolato dal sistema che viene utilizzato per calcolare il valore della valuta di base nell'organizzazione quando sono state abilitate più valute per l'organizzazione. La proprietà IsBaseCurrency identifica se un attributo di tipo money rappresenta la valuta di base.Ulteriori informazioni:Entità valuta transazione (valuta). Gli attributi di tipo money dispongono proprietà di metadati PrecisionSource che può specificare il livello di precisione da utilizzare. Il valore intero in questa determina se:
|
Attributi di dati di riferimento
Viene di solito fatto riferimento a questi come agli attributi di tipo lookup e ognuno di loro contiene un valore EntityReference. Le differenze tra questi attributi sono i tipi di entità a cui possono essere associati. La proprietà dei metadati Targets contiene String[] dei nomi logici di entità validi che rappresentano i target validi per la ricerca. Gli attributi di tipo lookup possono avere solo un tipo singolo nella proprietà Targets.
PartyListType rappresentano inoltre un tipo di attributo dei dati di riferimento, ma poiché contiene una raccolta di riferimenti, sono inclusi in Attributi dei dati di raccolta.
Attributi dati di stringa
Esistono due tipi di attributi che utilizzano i dati di stringa.
Tipo metadati |
Valore di AttributeTypeName |
Descrizione |
---|---|---|
StringType |
Un attributo relativo a un valore di stringa a cui è possibile applicare un formato.Ulteriori informazioni:Formati di StringAttributeMetadata. Gli attributi di tipo string personalizzati possono essere definiti come attributi calcolati.Ulteriori informazioni:Attributi calcolati. |
|
MemoType |
Un attributo relativo a un valore stringa destinato alle note. Questo attributo è equivalente agli attributi di tipo stringa con il valore della proprietà FormatName impostato su TextArea. |
Attributi dei dati dell'identificatore univoco
Gli attributi con il valore di metadati AttributeTypeName di UniqueidentifierType contengono valori NULL System.Guid.
Ogni istanza dell'entità include un attributo che rappresenta l'identificatore univoco del record. Questo attributo ha un nome schema che segue la convenzione di denominazione <entity schema name>+Id. Ad esempio, l'entità account del nome schema per l'attributo che rappresenta l'identificatore univoco viene denominata AccountId. Questo valore è inoltre disponibile direttamente utilizzando la proprietà Entity.Id. Questo attributo viene restituito sempre quando si recupera un'entità, anche se non lo si include nell'oggetto ColumnSet di una query. Questo valore è null per un'entità di cui è appena stata creata un'istanza. Sebbene sia valido impostare un valore GUID per definire l'identificatore univoco quando si crea un nuovo record, per ottimizzare le prestazioni è consigliabile lasciarlo null e consentire al sistema di assegnare un valore quando viene creato il record. Dopo aver salvato un record questo valore diventa di sola lettura.
Le entità possono includere altri attributi dell'identificatore univoco in base alle funzionalità dell'entità. Ad esempio, le entità abilitate per i processi aziendali conterranno attributi di identificatore univoco per ProcessId e StageId per registrare il processo aziendale corrente associato al record. Determinate relazioni di sistema che in genere utilizzato un valore EntityReference utilizzeranno un identificatore univoco in alternativa. Ad esempio le entità Account e Contatto hanno ognuna due attributi identificatore univoco (Address1_AddressId e Address2_AddressId) che corrisponde ai record CustomerAddress creati quando viene creato un Account o un Contatto.
Attributi virtuali
I metadati per un'entità includeranno alcuni attributi con il valore dei metadati AttributeTypeName di VirtualType. Questi attributi non possono essere utilizzati nel codice.
Attributi logici
Gli attributi logici contengono valori che sono archiviati in tabelle del database diverse rispetto ad altri attributi nell'entità. Nella maggior parte dei casi questa implementazione interna non è importante per utilizzare Microsoft Dynamics 365. Quando si utilizzano gli attributi logici come origini per un campo calcolato i valori nel campo calcolato non possono essere archiviati. Utilizzare la proprietà AttributeMetadata.IsLogical proprietà per rilevare se un attributo è un attributo di tipo logico.
La maggior parte degli attributi logici comuni sono quelli in cui sono archiviate le informazioni sull'indirizzo in diverse entità speciali: CompetitorAddress, CustomerAddress, InternalAddress, LeadAddress e PublisherAddress. Ci sono 8 entità di sistema che includono un set di attributi completo per i due indirizzi che utilizzano gli attributi logici. Ognuno di questi attributi inizia con "Address*", ad esempio Address1_City o Address2_Latitude.
Vedere anche
Introduzione alle entità in Microsoft Dynamics 365
Attributi di immagine
Attributi calcolati e di rollup
Esempio: recuperare le transizioni di stato valide
Esempio: impostare e recuperare le immagini di entità
Microsoft Dynamics 365
© 2017 Microsoft. Tutti i diritti sono riservati. Copyright