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

IsValidForCreate

True se il valore di questo attributo è valido per essere impostato quando viene creato un record, in caso contrario false.

IsValidForRead

True se è possibile recuperare il valore di questo attributo, in caso contrario false.

IsValidForUpdate

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

PicklistAttributeMetadata

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.

StatusAttributeMetadata

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.

StateAttributeMetadata

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.

BooleanAttributeMetadata

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.

EntityNameAttributeMetadata

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à.

  • Relazione Calendar.CalendarRules: calendar_calendar_rules

  • Relazione Service.CalendarRules: service_calendar_rules

PartyListType

Gli attributi seguenti consentono a più oggetti EntityReference di essere impostati per vari tipi di impegni.

ActivityPointer.allparties
Appointment.OptionalAttendees
Appointment.Organizer
Appointment.requiredattendees
CampaignActivity.from
CampaignActivity.Partners
CampaignResponse.Customer
CampaignResponse.from
CampaignResponse.Partner
Email.bcc
Email.cc
Email.from
Email.to
Fax.from
Fax.to
Letter.bcc
Letter.cc
Letter.from
Letter.to
PhoneCall.from
PhoneCall.to
RecurringAppointmentMaster.OptionalAttendees
RecurringAppointmentMaster.Organizer
RecurringAppointmentMaster.RequiredAttendees
ServiceAppointment.Customers
ServiceAppointment.Resources
SocialActivity.From
SocialActivity.Resources
SocialActivity.To

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

BigIntAttributeMetadata

BigIntType

Gli attributi BigInt sono solo per uso interno.

DecimalAttributeMetadata

DecimalType

Utilizzare i valori decimali.

La proprietà dei metadati Precision imposta la precisione da utilizzare per l'attributo.

DoubleAttributeMetadata

DoubleType

Utilizzare i valori doppi.

La proprietà dei metadati Precision imposta la precisione da utilizzare per l'attributo.

IntegerAttributeMetadata

IntegerType

Utilizzare i valori int.

MoneyAttributeMetadata

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:

  • 0: la precisione è determinata dalla proprietà dei metadati di Precision.

  • 1: il valore Organization.PricingDecimalPrecision.

  • 2: TransactionCurrency.CurrencyPrecision associato con il record corrente.

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.

Tipo metadati

Valore di AttributeTypeName

Descrizione

LookupAttributeMetadata

CustomerType

Tali attributi di tipo lookup di sistema possono collegarsi ai record di entità Contatto o Account.

Contact.ParentCustomerId
Contract.BillingCustomerId
Contract.CustomerId
ContractDetail.CustomerId
CustomerOpportunityRole.CustomerId
CustomerRelationship.CustomerId
CustomerRelationship.PartnerId
Entitlement.CustomerId
Incident.CustomerId
Invoice.CustomerId
Lead.CustomerId
Opportunity.CustomerId
Quote.CustomerId
SalesOrder.CustomerId
SocialActivity.PostAuthor
SocialActivity.PostAuthorAccount
SocialProfile.CustomerId

LookupType

Tali attributi di tipo lookup possono essere utilizzati per impostare i riferimenti a un record del tipo indicato dalla proprietà dei metadati di .

Alcune ricerche di sistema non hanno un set di valori per la proprietà Targets, ma l'entità desiderata dovrebbe essere basata in modo evidente sulla relazione di entità associata alla ricerca.

OwnerType

Queste ricerche di sistema sono sempre denominate OwnerId e ogni entità di proprietà dell'utente ne include una. Possono fare riferimento ai record di tipo SystemUser o Team.

Attributi dati di stringa

Esistono due tipi di attributi che utilizzano i dati di stringa.

Tipo metadati

Valore di AttributeTypeName

Descrizione

StringAttributeMetadata

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.

MemoAttributeMetadata

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