Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
As tabelas incluem uma coleção de colunas que representam os dados que podem ser incluídos em cada registro. Os desenvolvedores precisam entender os diferentes tipos de colunas e como trabalhar com elas.
Nomes de colunas
Assim como as tabelas, cada coluna tem um nome exclusivo definido quando é criada. Esse nome é apresentado de várias maneiras:
| Nome | Descrição |
|---|---|
SchemaName |
Normalmente, uma versão case de Pascal do nome lógico. Por exemplo: AccountNumber |
LogicalName |
Nome todo em letras minúsculas. Por exemplo: accountnumber |
Quando você cria uma coluna personalizada, o nome escolhido é precedido pelo prefixo de personalização do editor de solução associado à solução na qual a coluna foi criada.
Você não pode alterar os nomes de uma coluna depois que ela é criada.
Cada coluna também tem duas propriedades que podem exibir valores localizados. Os valores dessas propriedades são usados para se referir às colunas em um aplicativo.
| Nome | Descrição |
|---|---|
DisplayName |
Normalmente, o mesmo que o nome do esquema, mas pode incluir espaços. Por exemplo: Número da Conta |
Description |
Uma frase curta que descreve a coluna ou fornece diretrizes para o usuário. Por exemplo: digite um número de ID ou código da conta para pesquisar e identificar rapidamente a conta nas exibições do sistema. Em aplicativos controlados por modelos, essas informações são exibidas quando os usuários focalizam a coluna em um formulário. |
Esses são valores localizáveis que são usados para se referir às colunas em um aplicativo. Esses valores podem ser alterados a qualquer momento. Para adicionar ou editar valores localizados , consulte Traduzir texto de tabela, formulário e coluna personalizados em outros idiomas.
Tipos de coluna
A AttributeTypeName propriedade descreve o tipo de uma coluna. Essa propriedade contém um valor de tipo AttributeTypeDisplayName, que fornece um rótulo para cada um dos diferentes tipos de colunas existentes.
Observação
Não se deixe confundir com a AttributeType propriedade. Os valores nesta propriedade mais antiga são alinhados principalmente com AttributeTypeName a exceção de que ele mostra ImageAttributeMetadata e MultiSelectPicklistAttributeMetadata como Virtual. Consulte a propriedade AttributeTypeName em vez da propriedade AttributeType.
Na tabela a seguir:
- Esses tipos são agrupados por categoria para comparação.
- Para cada
AttributeTypeDisplayNamevalor, a classe derivada do assembly AttributeMetadata .NET correspondente é incluída quando disponível. Não há uma relação 1:1 entre esses tipos e oAttributeTypeDisplayNamerótulo. - Esses tipos de coluna que podem ser criados como colunas personalizadas incluem o rótulo correspondente exibido na interface do usuário.
| Categoria | Nome de Exibição do Tipo de Atributo Tipo AttributeMetadata |
Pode Criar/ Etiqueta |
Descrição |
|---|---|---|---|
| Categorização | BooleanTypeBooleanAttributeMetadata |
Sim Duas Opções |
Contém o valor selecionado de Sim/Não que geralmente indica um valor verdadeiro ou falso. Mais informações: Escolha |
| Categorização | EntityNameTypeEntityNameAttributeMetadata |
No | Contém um valor que corresponde a uma tabela no sistema. Somente para uso interno. |
| Categorização | MultiSelectPicklistTypeMultiSelectPicklistAttributeMetadata |
Sim Conjunto de opções multiSelect |
Contém vários valores selecionados em que vários valores podem ser selecionados. Mais informações: Escolha Colunas de opções |
| Categorização | PicklistTypePicklistAttributeMetadata |
Sim Conjunto de Opções |
Contém o valor selecionado em que uma opção pode ser selecionada. Mais informações: Escolha |
| Categorização | StateTypeStateAttributeMetadata |
No | Contém o valor que descreve o status de um registro de tabela. Mais informações: Escolha |
| Categorização | StatusTypeStatusAttributeMetadata |
No | Contém o valor que descreve o motivo do status de um registro de tabela. Mais informações: Escolha |
| Collection | CalendarRulesType |
No | Contém uma coleção de registros da tabela CalendarRules.Não há colunas que usem esse tipo. Ao gerar um proxy, a ferramenta de geração de código cria duas colunas simuladas que não estão presentes na definição. Essas colunas representam uma exibição dos registros de regras de calendário associados em uma relação um-para-muitos com o registro da tabela. |
| Collection | PartyListType |
No | Contém uma coleção de registros de tabela ActivityParty.Mais informações: tabela ActivityParty |
| Data e hora | DateTimeTypeDateTimeAttributeMetadata |
Sim Data e Hora |
Contém um valor de data e hora. Todas as colunas de data e hora dão suporte a valores desde 1/1/1753 12:00 AM. |
| Arquivo | FileTypeFileAttributeMetadata |
Sim Arquivo |
Contém dados para dar suporte à recuperação de dados binários para um registro de tabela. Mais informações: Trabalhar com definições de coluna de arquivo usando código |
| Imagem | ImageTypeImageAttributeMetadata |
Sim Imagem |
Contém dados para auxiliar na obtenção de dados de imagem para um registro de tabela. Mais informações: Imagens de entidade |
| Propriedade Gerenciada | ManagedPropertyTypeManagedPropertyAttributeMetadata |
No | Contém dados que descrevem se o componente da solução armazenado no registro da tabela pode ser personalizado quando incluído em uma solução gerenciada. Mais informações: Propriedades Gerenciadas |
| Quantidade | BigIntTypeBigIntAttributeMetadata |
Sim | Contém um BigInt valor. |
| Quantidade | DecimalTypeDecimalAttributeMetadata |
Sim Número Decimal |
Contém um Decimal valor. A Precision propriedade define o nível de precisão. |
| Quantidade | DoubleTypeDoubleAttributeMetadata |
Sim Número de Ponto Flutuante |
Contém um Double valor. A Precision propriedade define o nível de precisão. |
| Quantidade | IntegerTypeIntegerAttributeMetadata |
Sim Número Inteiro |
Contém um Int valor |
| Quantidade | MoneyTypeMoneyAttributeMetadata |
Sim Moeda |
Contém um Decimal valor. A PrecisionSource propriedade determina onde o nível de precisão é definido.0: A Precision propriedade1: A Organization.PricingDecimalPrecision coluna2: A TransactionCurrency.CurrencyPrecision coluna no registro da tabela |
| Referência | CustomerTypeLookupAttributeMetadata |
Sim Cliente |
Contém uma referência a uma conta ou registro de tabela de contatos. |
| Referência | LookupTypeLookupAttributeMetadata |
Sim Pesquisar |
Contém uma referência a um registro de tabela. Os nomes lógicos dos registros válidos geralmente são armazenados na Targets propriedade da coluna. |
| Referência | OwnerTypeLookupAttributeMetadata |
No | Contém uma referência a um registro de tabela de usuário ou de equipe. |
| String | MemoTypeMemoAttributeMetadata |
Sim Várias Linhas de Texto |
Contém um valor de cadeia de caracteres destinado a ser exibido em uma caixa de texto de várias linhas. |
| String | StringTypeStringAttributeMetadata |
Sim Linha Única de Texto |
Contém um valor de cadeia de caracteres destinado a ser exibido em uma caixa de texto de linha única. |
| Identificador exclusivo | UniqueidentifierTypeUniqueIdentifierAttributeMetadata |
No | Contém um valor de identificador exclusivo do GUID. |
| Virtual | VirtualType |
No | Essas colunas não podem ser usadas no código e geralmente podem ser ignoradas. |
Operações suportadas e uso de formulários para colunas
Cada coluna inclui propriedades boolianas que descrevem os tipos de operações em que ela pode participar e como ela pode estar em um formulário.
| Propriedade | Descrição |
|---|---|
IsRequiredForForm |
Se a coluna deve ser incluída em um formulário |
IsValidForCreate |
Se o valor da coluna pode ser definido em uma operação de criação |
IsValidForForm |
Se a coluna pode ser incluída como uma coluna em um formulário |
IsValidForRead |
Se o valor da coluna pode ser recuperado |
IsValidForUpdate |
Se o valor da coluna pode ser definido em uma operação de atualização |
Se você tentar definir um valor em uma operação de criação ou atualização para uma coluna que não seja válida para essa operação, o valor será ignorado. Se você tentar recuperar uma coluna que não é válida para leitura, um valor nulo será retornado.
Nível de requisito de coluna
A RequiredLevel propriedade é uma propriedade gerenciada booliana que descreve se um valor de coluna é necessário.
Essa propriedade pode ter os seguintes valores definidos:
| Nome | Valor | Rótulo da interface do usuário | Descrição |
|---|---|---|---|
None |
0 | Opcional | Nenhum requisito é especificado. |
SystemRequired |
1 | Sistema necessário | O Dataverse requer que a coluna tenha um valor. |
ApplicationRequired |
2 | Requisitos Empresariais | O aplicativo requer que a coluna tenha um valor. |
Recommended |
3 | Negócios recomendados | É recomendável que a coluna tenha um valor. |
O Dataverse impõe apenas a opção SystemRequired para colunas criadas pelo sistema. Colunas personalizadas não podem ser definidas para usar a opção SystemRequired . O Dataverse não retorna um erro quando uma coluna com ApplicationRequired aplicado não tem um valor.
Aplicativos controlados por modelo impõem a opção ApplicationRequired e usam uma apresentação diferente para a opção Recommended . Os criadores de clientes personalizados podem usar essas informações para exigir opções de validação ou apresentação semelhantes.
Como RequiredLevel é uma propriedade gerenciada, enquanto editor de uma solução gerenciada, você pode decidir se os consumidores da sua solução são capazes de alterar essas configurações nas colunas da sua solução.
Mais informações: Propriedades Gerenciadas
Colunas especializadas
Fórmulas, agregações e colunas de cálculo liberam o usuário de realizar cálculos manualmente, permitindo que se concentre em seu trabalho. Os administradores do sistema podem definir uma coluna para conter o valor de muitos cálculos comuns sem precisar trabalhar com um desenvolvedor. Os desenvolvedores também podem usar os recursos da plataforma para executar esses cálculos em vez de dentro de seu próprio código.
Uma coluna de prompt é um tipo de dado alimentado por IA no Microsoft Dataverse que permite definir prompts de linguagem natural vinculados a outras colunas na tabela.
Mais informações:
- Definir colunas de rollup que agreguem valores
- Definir colunas calculadas para automatizar cálculos
- Colunas de prompt (versão prévia)
- Colunas especializadas usando código
Formato de coluna
Os valores de formato da coluna controlam como ela é exibida em aplicativos controlados por modelos. O desenvolvedor de aplicativos personalizados pode usar essas informações para criar experiências semelhantes.
Formatos inteiros
, Use a propriedade Format com colunas inteiras para exibir experiências alternativas para este tipo.
| Opção | Descrição |
|---|---|
None |
Exibe uma caixa de texto para editar um valor numérico |
Duration |
Exibe uma lista suspensa que contém intervalos de tempo. Um usuário pode selecionar um valor da lista ou digitar um valor inteiro que representa o número de minutos. |
TimeZone |
Exibe uma lista suspensa que contém uma lista de fusos horários. |
Language |
Exibe um menu suspenso que contém os idiomas ativados para a organização. Se nenhum outro idioma tiver sido habilitado, o idioma base será a única opção. O valor salvo é o valor LCID do idioma. |
Formatos de cadeia de caracteres
Use a FormatName propriedade com colunas de texto para definir valores a partir do StringFormatName para controlar como a coluna de texto é formatada.
| Nome | Descrição |
|---|---|
Email |
A coluna de formulário valida o valor de texto como um endereço de e-mail e cria um link mailto na coluna. |
PhoneNumber |
A coluna de formulário contém um link para iniciar uma chamada telefônica usando o Skype. |
PhoneticGuide |
Somente para uso interno. |
Text |
O formulário exibe uma caixa de texto. |
TextArea |
O formulário exibe uma coluna de área de texto. |
TickerSymbol |
O formulário exibe um link que, ao ser aberto, mostra uma cotação para o símbolo do ticker das ações. |
URL |
O formulário exibe um link para abrir a URL. |
VersionNumber |
Somente para uso interno. |
Formatos de data e hora
A DateTimeBehavior propriedade controla o comportamento das colunas Data e Hora.
Existem três opções:
| Opção | Descrição curta |
|---|---|
UserLocal |
Armazena o valor de data e hora como valor UTC no sistema. |
DateOnly |
Armazena o valor real da data com o valor de hora como 00:00:00 no sistema. |
TimeZoneIndependent |
Armazena os valores reais de data e hora no sistema, independentemente do fuso horário do usuário. |
Use a propriedade Format para controlar como o valor deve ser exibido em um aplicativo controlado por modelo, independentemente do DateTimeBehavior.
| Opção | Descrição |
|---|---|
| Data e Hora | Exibir a data e a hora completas |
| DateOnly | Exiba apenas a data. |
Mais informações: Comportamento e formato da coluna de data e hora
Colunas de numeração automática
Você pode adicionar uma coluna de número automático para qualquer tabela. Atualmente, você pode adicionar a coluna programaticamente. Não há nenhuma interface do usuário para adicionar esse tipo de coluna. Mais informações: Criar colunas de numeração automática
Opção
As colunas que exibem um conjunto de opções podem referenciar um conjunto de opções definido pela coluna ou podem referenciar um conjunto separado de opções que podem ser compartilhadas por mais de uma coluna. Isso é útil quando os valores em uma coluna também se aplicam a outras colunas. Ao referenciar um conjunto comum de opções, as opções podem ser mantidas em um só lugar. Essas opções que podem ser compartilhadas são escolhas globais. Aqueles definidos na coluna são de opção local .
Recuperar dados de opções
O SDK para .NET fornece classes de solicitação que você pode usar para recuperar as opções usadas por uma coluna.
Usar o SDK para .NET para recuperar opções
Cada uma das colunas com opções que herdam de EnumAttributeMetadata inclui uma Propriedade OptionSet. Esta propriedade contém o OptionSetMetadata que inclui as opções dentro da propriedade Options.
Com o SDK para .NET, você pode usar as seguintes classes de solicitação para recuperar informações sobre a escolha:
| Classe Request | Descrição |
|---|---|
| RetrieveAllOptionSetsRequest | Recupera dados sobre todas as opções globais |
| RetrieveAttributeRequest | Recupera dados sobre uma coluna, incluindo qualquer opção |
| RetrieveMetadataChangesRequest | Recupera metadados com base em uma consulta que pode incluir a opção Mais informações: Definições de esquema de consulta |
| RetrieveOptionSetRequest | Recupera dados sobre uma escolha global . |
Mais informações:
- Criar e editar a visão geral das opções globais
- Exemplo: Exportar opções/informações de lista de opções para um arquivo
- Personalizar opções
Usar a API Web para recuperar valores de escolha
A API Web fornece um estilo RESTful para consultar valores de escolha. Você pode recuperar a opção local ou global recuperando a coluna dentro de uma tabela. O exemplo a seguir retorna o OptionSetMetadata correspondente à escolha incluída na propriedade Account.AccountCategoryCode.
GET <organization url>/api/data/v9.2/EntityDefinitions(LogicalName='account')/Attributes(LogicalName='accountcategorycode')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?$select=LogicalName&$expand=OptionSet
Com a API Web, você também pode usar a função RetrieveMetadataChanges.
Mais informações: Consultar definições de tabela usando a API da Web para recuperar atributos>
Mapeamento de coluna
Ao criar um novo registro de tabela no contexto de um registro de tabela existente, você pode transferir automaticamente determinados valores do registro de tabela existente como valores padrão para o novo registro de tabela. Isso simplifica a entrada de dados para pessoas que usam aplicativos controlados por modelos. Os usuários do aplicativo veem os valores mapeados e podem editá-los antes de salvar a entidade.
Para desenvolvedores que criam clientes personalizados, o mesmo comportamento pode ser alcançado usando a InitializeFrom mensagem (classe SDK InitializeFromRequest ou função API Web InitializeFrom) para obter os dados da entidade com os valores padrão configurados definidos.
Mais informações
Colunas lógicas
As colunas lógicas contêm valores armazenados em tabelas de banco de dados diferentes de outras colunas na tabela. Na maioria dos casos, essa implementação interna não é relevante para trabalhar com o Dataverse. Quando você usa colunas lógicas como fontes para um campo calculado, os valores no campo calculado não podem ser classificados. Use a propriedade AttributeMetadata.IsLogical para detectar se um atributo é um atributo lógico.