Trabalhando com colunas de valores múltiplos.

Aplica-se a: Outlook 2013 | Outlook 2016

Uma coluna de valores múltiplos contém os dados de uma propriedade de valores múltiplos, que é uma propriedade que tem uma matriz de valores do tipo base em vez de um único valor. Como nenhuma das tabelas inclui propriedades de valores múltiplos em seus conjuntos de colunas padrão, as propriedades de valores múltiplos serão incluídas em uma tabela somente se o usuário da tabela solicitar.

Colunas de valores múltiplos podem ser exibidas em tabelas:

  • Em uma única linha, com todos os valores de propriedade aparecendo em uma única instância de coluna. Este é o padrão.

    • Ou -
  • Em uma série de linhas, com uma linha para cada um dos valores de propriedade. Cada valor exclusivo aparece na coluna em sua própria linha, com tantas linhas quanto valores na propriedade de valores múltiplos. Cada linha tem um valor exclusivo para a propriedade PR_INSTANCE_KEY (PidTagInstanceKey), mas os mesmos valores para as outras colunas. Se uma linha contiver mais de uma coluna com vários valores, por exemplo, duas colunas com valores M e N , respectivamente, as instâncias de M*N da linha serão exibidas na tabela.

Um usuário de tabela solicita o tipo de exibição não padrão chamando o método IMAPITable::SetColumns com o sinalizador MVI_FLAG definido no tipo de propriedade da coluna de valores múltiplos. O sinalizador MVI_FLAG é uma constante definida como o resultado da combinação dos sinalizadores MV_FLAG e MV_INSTANCE com uma operação lógica OR . Além de ser usado em SetColumns, MVI_FLAG também pode ser passado para IMAPITable::SortTable no parâmetro lpSortCriteria e IMAPITable::Restrict no membro ulPropTag do parâmetro lpRestriction . Quando passado o MVI_FLAG, SortTable tem um desempenho semelhante ao SetColumns, adicionando uma linha para cada valor na coluna de valores múltiplos e classificando os valores únicos nas instâncias. Uma linha é adicionada para cada valor.

Restrict, no entanto, não expande a coluna de valores múltiplos em linhas computadas adicionais. Uma coluna de valores múltiplos com o conjunto de MVI_FLAG instrui o provedor de serviços a usar essa coluna para restringir a tabela. Se houver um valor de propriedade na restrição, ele deverá ser uma marca de propriedade de valor único idêntica à que seria retornada por IMAPITable::QueryRows para a coluna.

Os implementadores de tabela só precisam dar suporte ao tipo padrão de exibição e podem retornar o valor MAPI_E_TOO_COMPLEX quando um chamador solicitar a outra alternativa. A capacidade de dar suporte a ambos os tipos de exibição é mais importante para provedores de repositório de mensagens que implementam tabelas de conteúdo da pasta.

Confira também

Tabelas MAPI