O Outlook não exibe um campo inteiro definido pelo usuário no calendário (outros tipos, OK)

0

Meus compromissos têm 3 campos personalizados (integer, string, systemtime) e eles contêm dados. Ao exibir 'Exibir / Visualização Atual / Todos os Compromissos', o inteiro TimeTellID não mostra dados. Abaixo está uma captura de tela de parte dessa visualização. Eu modifiquei a visualização através de Personalizar visualização atual / Campos e, em seguida, clique em "Novo campo" três vezes:

Paraverificar,seeu"remover" o campo para que ele volte para a coluna da esquerda, posso ver as propriedades:

Issoaconteceemtodasascaixasdecorreio(4)queeuexperimento,usandooOutlook2007conectadoacaixasdecorreiodoExchange2013.Eufaçoomesmodeoutroperfilconectando-meaumservidordoExchange2010eláfunciona.

Nota:
EupossoveroscampospersonalizadostêmvaloresquandoeuconsultaroseventosusandochamadasSOAP:

<t:ExtendedProperty><t:ExtendedFieldURIDistinguishedPropertySetId="PublicStrings" PropertyName="TimeTellID" PropertyType="Integer"/>
    <t:Value>10016</t:Value>
 </t:ExtendedProperty>
 <t:ExtendedProperty>
    <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="TimeTellSyncID" PropertyType="String"/>
    <t:Value>000000008[snip]7F63DD0000</t:Value>
 </t:ExtendedProperty>
 <t:ExtendedProperty>
    <t:ExtendedFieldURI DistinguishedPropertySetId="PublicStrings" PropertyName="TimeTellSyncTime" PropertyType="SystemTime"/>
    <t:Value>2014-01-10T09:20:13Z</t:Value>
 </t:ExtendedProperty>
    
por Jan Doggen 10.01.2014 / 10:46

1 resposta

0

Encontrado.

Ao fazer uma sincronização do Outlook / Exchange do meu aplicativo Delphi através do OLE, recebi este EOleException:

"A custom field with this name but a different data type already exists. Enter a different name"

Meu código estava tentando adicionar uma propriedade de usuário do tipo olInteger com o nome TimeTellID .

Então, obviamente, já havia um TimeTellID de um tipo diferente.

O que fiz foi remover o campo pelos diálogos mencionados na pergunta e criar um novo. No começo isso não funcionou. Mas a parte complicada aqui é que existem dois tipos número e número inteiro e você não os vê juntos no menu suspenso :

Quandoescolhonúmerointeiro,ocampoaparece.
(Entãoeudevotercometidoesseerroemalgummomentonopassado).

-Informaçõesadicionais-

Enquantomexiacomesseproblema,noteiumpoucodeconfusãorelacionadaàspropriedadesdousuáriosendopartedositensdecompromissoe/oudapasta.Meucódigoadicionandoaspropriedadesdousuáriotinhaumterceiroparâmetrodefinidocomofalse.EsseterceiroparâmetroéAddToFolderFields.Citandoo Método UserProperties.Add (Outlook) :

True se a propriedade for adicionada como um campo personalizado à pasta em que o item se encontra. Esse campo pode ser exibido na exibição da pasta. Falso se a propriedade for adicionada como um campo personalizado ao item, mas não à pasta.

Portanto, não atribuindo as propriedades do usuário à pasta, elas não ficam disponíveis nos diálogos do Outlook.
Obviamente, é possível no Outlook defini-las como propriedades da pasta "após o fato" e, em seguida, os valores serão selecionados a partir das propriedades do compromisso.

    
por 11.02.2014 / 14:46