Operação UpdateItem

A operação UpdateItem é usada para modificar as propriedades de um item existente no repositório exchange.

Comentários

Você pode executar três ações básicas de atualização em um item. A tabela a seguir lista as ações que você pode executar.

Action Descrição
Append
Adiciona dados a uma propriedade existente. Essa ação preserva os dados atuais. O acréscimo não se aplica a todas as propriedades.
Set
Substitui os dados de uma propriedade se a propriedade contiver dados ou criar a propriedade e definir seu valor se a propriedade não existir. A ação definida só é aplicável a propriedades graváveis.
Excluir
Remove uma propriedade de um item. Isso difere da configuração de uma propriedade para um valor vazio. Quando essa ação é concluída, a propriedade não existe para o item. A exclusão só é aplicável a propriedades graváveis.

Uma chamada UpdateItem pode ser usada para modificar um ou mais itens e uma ou mais propriedades em cada item. O elemento ItemChanges contém todas as modificações que devem ser executadas como parte dessa chamada. O elemento ItemChange , filho do elemento ItemChanges , representa as modificações a serem executadas em um único item. O elemento ItemChange contém um conjunto de ações de atualização que podem ser executadas em um único item. Essas alterações estão contidas no elemento Atualizações (Item). O elemento ItemId identifica o item a ser atualizado. Para atualizar mais de uma propriedade em um item, um SetItemField, AppendToItemField ou DeleteItemField deve ser fornecido para cada propriedade que requer a atualização.

Observação

As ações de atualização são aplicadas na ordem em que são especificadas.

Para cada alteração, você precisa especificar o caminho da propriedade para alterar e uma representação desse item com seu novo valor. A ação de exclusão é ligeiramente diferente, na medida em que apenas o caminho da propriedade que deve ser excluída é necessário. Para ações de conjunto e acrescentação, o caminho especificado deve se referir à mesma propriedade que está sendo definida na representação do item. Se forem diferentes, um erro será retornado.

A operação UpdateItem pode definir a hora de início e término de um item do exchange store. Em uma solicitação UpdateItem , a hora de início pode ser definida sem definir também a hora de término . Isso pode causar um erro se a hora de início for mais tarde do que a hora de término . Lembre-se de que os aplicativos cliente devem ajustar o tempo de término quando a hora de início for alterada para preservar a duração.

Quando um único item de calendário é atualizado para se tornar um item de calendário mestre recorrente, a propriedade MeetingTimeZone deve ser definida pela operação UpdateItem para preservar o fuso horário original do item de calendário.

Exemplo de solicitação SetItemField

Descrição

O exemplo a seguir de uma solicitação UpdateItem mostra como definir a propriedade de confidencialidade em um item.

Código

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
               xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
               xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
  <soap:Body>
    <UpdateItem MessageDisposition="SaveOnly" ConflictResolution="AutoResolve" 
                xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
      <ItemChanges>
        <t:ItemChange>
          <t:ItemId Id="AAAtAEFkb..." ChangeKey="CQAAABYAAAB..."/>
          <t:Updates>
            <t:SetItemField>
              <t:FieldURI FieldURI="item:Sensitivity"/>
              <t:Message>
                <t:Sensitivity>Normal</t:Sensitivity>
              </t:Message>
            </t:SetItemField>
          </t:Updates>
        </t:ItemChange>
      </ItemChanges>
    </UpdateItem>
  </soap:Body>
</soap:Envelope>

Comments

O identificador de item e a chave de alteração foram encurtados para preservar a legibilidade.

Elementos de solicitação SetItemField

Os seguintes elementos são usados na solicitação:

Exemplo de solicitação AppendToItemField

Descrição

O exemplo a seguir de uma solicitação UpdateItem mostra como anexar texto à propriedade do corpo em um item.

Código

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
  xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
  <soap:Body>
    <UpdateItem MessageDisposition="SaveOnly" ConflictResolution="AutoResolve" 
                xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
      <ItemChanges>
        <t:ItemChange>
          <t:ItemId Id="AAAtAEFkbW..." ChangeKey="CQAAABYA..."/>
          <t:Updates>
            <t:AppendToItemField>
              <t:FieldURI FieldURI="item:Body"/>
              <t:Message>
                <t:Body BodyType="Text">Some additional text to append</t:Body>
              </t:Message>
            </t:AppendToItemField>
          </t:Updates>
        </t:ItemChange>
      </ItemChanges>
    </UpdateItem>
  </soap:Body>
</soap:Envelope>

Comments

As seguintes propriedades dão suporte à ação de acréscimo:

  • message:ReplyTo

  • item:Body

  • Todas as propriedades da coleção de destinatários e participantes

O identificador de item e a chave de alteração foram encurtados para preservar a legibilidade.

Elementos de solicitação AppendToItemField

Os seguintes elementos são usados na solicitação:

Exemplo de solicitação DeleteItemField

Descrição

O exemplo a seguir de uma solicitação UpdateItem mostra como excluir uma propriedade em um item.

Código

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
  <soap:Body>
    <UpdateItem MessageDisposition="SaveOnly" ConflictResolution="AutoResolve" 
                xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
      <ItemChanges>
        <t:ItemChange>
          <t:ItemId Id="AAAtAEFkbWluaXN0cm..." ChangeKey="CQAAABYAA..."/>
          <t:Updates>
            <t:DeleteItemField>
              <t:FieldURI FieldURI="item:Body"/>
            </t:DeleteItemField>
          </t:Updates>
        </t:ItemChange>
      </ItemChanges>
    </UpdateItem>
  </soap:Body>
</soap:Envelope>

Comments

O identificador de item e a chave de alteração foram encurtados para preservar a legibilidade.

Elementos de solicitação DeleteItemField

Os seguintes elementos são usados na solicitação:

Exemplo de resposta bem-sucedido

Descrição

O exemplo a seguir mostra uma resposta bem-sucedida a uma solicitação UpdateItem .

Código

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Header>
    <t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="664" MinorBuildNumber="0" 
                         xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"/>
  </soap:Header>
  <soap:Body>
    <UpdateItemResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" 
                        xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" 
      xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
      <m:ResponseMessages>
        <m:UpdateItemResponseMessage ResponseClass="Success">
          <m:ResponseCode>NoError</m:ResponseCode>
          <m:Items>
            <t:Message>
              <t:ItemId Id="AAAtAEFkbW..." ChangeKey="CQAAABYAAA..."/>
            </t:Message>
          </m:Items>
        </m:UpdateItemResponseMessage>
      </m:ResponseMessages>
    </UpdateItemResponse>
  </soap:Body>
</soap:Envelope>

Comments

O identificador de item e a chave de alteração foram encurtados para preservar a legibilidade.

Elementos de resposta bem-sucedidos

Os seguintes elementos são usados na resposta:

Confira também

Operação UpdateItem (tarefa)

Operação UpdateItem (contato)

Atualizando contatos

Atualizando tarefas