Share via


Atributos (Master Data Services)

No Master Data Services, atributos são objetos em entidades. Um atributo é um contêiner para valores de atributo, cada um dos quais descreve um membro.

Você pode pensar em um atributo como uma coluna em uma tabela de entidade. Um valor de atributo é o valor usado para descrever um membro específico.

Exemplo de entidade

No exemplo a seguir, a entidade tem os atributos: Name, Code, Subcategory, StandardCost, ListPrice e FilePhoto. Esses atributos descrevem os membros, os quais são representados por uma única linha de valores de atributo.

Exemplo de entidade com dados de exemplo

Quando você cria uma entidade, os atributos Name e Code são criados automaticamente. Code requer um valor e precisa ser exclusivo dentro da entidade. Não é possível remover os atributos Name e Code.

Um atributo pode ser usado para descrever um membro folha, um membro consolidado ou uma coleção.

Tipos de atributos

Há três tipos de atributos:

  • Atributos com base em domínio que são preenchidos por entidades. Para obter mais informações, consulte Atributos baseados em domínio (Master Data Services).

  • Atributos de arquivo, que são usados para armazenar arquivos, documentos ou imagens. A finalidade dos atributos de arquivo é ajudar na consistência dos seus dados ao exigir que os arquivos tenham uma extensão específica. Os atributos de arquivo não impedem que um usuário mal-intencionado carregue um arquivo de um tipo diferente.

  • Atributos de forma livre que permitem entrada de forma livre para texto, números, datas ou links.

Atributos de forma livre numéricos

Os atributos de forma livre numéricos são limitados ao tipo de valor SqlDouble.

Por padrão, um valor Double contém 15 dígitos decimais de precisão, embora um máximo de 17 dígitos seja mantido interiormente. A precisão de um número de ponto flutuante tem várias consequências:

  • Dois números de ponto flutuante que pareçam iguais para uma determinada precisão podem não ser comparados como iguais porque seus dígitos menos significantes são diferentes.

  • Uma operação matemática ou de comparação que use um número de ponto flutuante talvez não produza o mesmo resultado se um número decimal for usado, porque o número de ponto flutuante pode não ser exatamente idêntico ao número decimal.

  • Um valor pode não fazer uma viagem de ida e volta quando um número de ponto flutuante estiver envolvido. Diz-se que um valor faz uma viagem de ida e volta quando uma operação converte um número de ponto flutuante original para outra forma, uma operação inversa transforma a forma convertida de volta para um número de ponto flutuante e o número de ponto flutuante final é igual ao número de ponto flutuante original. A viagem de ida e volta pode falhar porque um ou mais dígitos menos significantes são perdidos ou alterados na conversão.

Exemplo de atributo

No exemplo a seguir, a entidade Product contém:

  • Os atributos de forma livre Name, Code, StandardCost e ListPrice.

  • O atributo com base no domínio Subcategory.

  • O atributo de arquivo FilePhoto.

Subcategory é uma entidade usada como atributo com base em domínio da entidade Product. Category é uma entidade usada como atributo com base em domínio de Subcategory. Assim como a entidade Product, as entidades Category e Subcategory contêm os atributos padrão Name e Code.

Entidade