Compartilhar via


Inserindo, atualizando e descartando membros (XMLA)

Você pode usar os comandos Insert, Update e Drop no XMLA (XML for Analysis) para inserir, atualizar ou excluir, respectivamente, membros de uma dimensão habilitada para gravação. Para obter mais informações sobre dimensões habilitadas para gravação, consulte Dimensões habilitadas para gravação.

Inserindo membros novos

O comando Insert insere novos membros em atributos especificados de uma dimensão habilitada para gravação.

Antes de criar o comando Insert, você deve ter as seguintes informações disponíveis para os membros novos a serem inseridos:

  • A dimensão na qual os membros novos serão inseridos.

  • O atributo da dimensão no qual os membros novos serão inseridos.

  • Os nomes dos membros novos, incluindo qualquer tradução aplicável para o nome.

  • As chaves dos membros novos. Se um atributo usar uma chave composta, ela poderá exigir diversos valores.

  • Os valores para qualquer propriedade de atributo aplicável que não são implementados como outros atributos dentro da dimensão. Tais propriedades de atributo incluem operações unárias, traduções, rollups personalizados, propriedades de rollup personalizadas e níveis ignorados.

O comando Insert só contém duas propriedades:

  • A propriedade Object, que contém uma referência de objeto para a dimensão na qual os membros serão inseridos. A referência de objeto contém o identificador de banco de dados, o identificador de cubo e o identificador de dimensão para a dimensão.

  • A propriedade Attributes, que contém um ou mais elementos Attribute para identificar os atributos nos quais os membros serão inseridos. Cada elemento Attribute identifica um atributo e fornece o nome, valor, traduções, operador unário, rollup personalizado, propriedades de rollup personalizadas e níveis ignorados para um único membro a ser adicionado ao atributo identificado.

    ObservaçãoObservação

    Todas as propriedades do elemento Attribute devem ser incluídas. Caso contrário, poderá ocorrer um erro.

Atualizando membros existentes

O comando Update atualiza os membros existentes em atributos especificados, com base em relacionamentos com outros membros em outros atributos, em uma dimensão habilitada para gravação. O comando Update pode mover membros para outros níveis em hierarquias contidas pela dimensão e pode ser usado para reestruturar hierarquias pai-filho definidas por atributos pai.

Antes de criar o comando Update, você deve ter as seguintes informações disponíveis para os membros a serem atualizados:

  • A dimensão na qual os membros existentes serão atualizados.

  • Os atributos de dimensão nos quais os membros existentes serão atualizados.

  • As chaves dos membros existentes. Se um atributo usar uma chave composta, ela poderá exigir diversos valores.

  • Os valores para qualquer propriedade de atributo aplicável que não são implementados como outros atributos dentro da dimensão. Tais propriedades de atributo incluem operações unárias, traduções, rollups personalizados, propriedades de rollup personalizadas e níveis ignorados.

O comando Update só contém três propriedades obrigatórias:

  • A propriedade Object, que contém uma referência de objeto para a dimensão na qual os membros serão atualizados. A referência de objeto contém o identificador de banco de dados, o identificador de cubo e o identificador de dimensão para a dimensão.

  • A propriedade Attributes, que contém um ou mais elementos Attribute para identificar os atributos nos quais os membros serão atualizados. O elemento Attribute identifica um atributo e fornece o nome, valor, traduções, operador unário, rollup personalizado, propriedades de rollup personalizadas e níveis ignorados para um único membro a ser atualizado para o atributo identificado.

    ObservaçãoObservação

    Todas as propriedades do elemento Attribute devem ser incluídas. Caso contrário, poderá ocorrer um erro.

  • A propriedade Where, que contém um ou mais elementos Attribute que restringem os atributos nos quais os membros serão atualizados. A propriedade Where é fundamental para limitar um comando Update a instâncias específicas de um membro. Se a propriedade Where não for especificada, todas as instâncias de um determinado membro serão atualizadas. Por exemplo, existem três clientes para quem você deseja alterar o nome da cidade de Redmond para Bellevue. Para alterar o nome da cidade, forneça uma propriedade Where que identifique os três membros no atributo Customer para o qual os membros do atributo City devem ser alterados. Se você não fornecer essa propriedade Where, todos os clientes cujo nome da cidade é Redmond receberiam o nome da cidade Bellevue após a execução do comando Update.

    ObservaçãoObservação

    Com exceção dos membros novos, o comando Update só pode atualizar valores chaves de atributo para atributos não incluídos na cláusula Where. Por exemplo, o nome da cidade não pode ser atualizado quando um cliente é atualizado; caso contrário, o nome da cidade seria alterado para todos os clientes.

Atualizando membros em atributos pai

Para dar suporte a atributos pai, o comando Update possui as propriedades opcionais MoveWithDescendants. A configuração da propriedade MoveWithDescendants como verdadeira indica que os descendentes do membro pai também devem ser movidos com o membro pai quando o seu identificador for alterado. Se esse valor for definido como falso, mover um membro pai fará com que os descendentes imediatos desse membro pai sejam promovidos ao nível no qual o membro pai residia anteriormente.

Ao atualizar os membros em um atributo pai, o comando Update não poderá atualizar os membros em outros atributos.

Descartando membros existentes

Antes de criar o comando Drop, você deve ter as seguintes informações disponíveis para os membros a serem descartados:

  • A dimensão na qual os membros existentes serão descartados.

  • Os atributos de dimensão nos quais os membros existentes serão descartados.

  • As chaves dos membros existentes serem descartados. Se um atributo usar uma chave composta, ela poderá exigir diversos valores.

O comando Drop só contém duas propriedades obrigatórias:

  • A propriedade Object que contém uma referência de objeto para a dimensão na qual os membros devem ser descartados. A referência de objeto contém o identificador de banco de dados, o identificador de cubo e o identificador de dimensão da dimensão.

  • A propriedade Where, que contém um ou mais elementos Attribute para restringir os atributos nos quais os membros serão excluídos. A propriedade Where é fundamental para limitar um comando Drop a instâncias específicas de um membro. Se o comando Where não for especificado, serão descartadas todas as instâncias de um determinado membro. Por exemplo, existem três clientes que você deseja descartar de Redmond. Para descartar esses clientes, forneça uma propriedade Where que identifique os três membros de um atributo Customer a ser removido e o membro Redmond do atributo City a partir do qual os três clientes serão removidos. Se a propriedade Where só especificar o membro Redmond do atributo City, todos os clientes associados a Redmond serão descartados pelo comando Drop. Se a propriedade Where só especificar os três membros do atributo Customer, os três clientes serão totalmente excluídos pelo comando Drop.

    ObservaçãoObservação

    Os elementos Attribute incluídos em um comando Drop só devem conter as propriedades AttributeName e Keys. Caso contrário, poderá ocorrer um erro.

Descartando membros em atributos pai

Definir a propriedade DeleteWithDescendants indica que os descendentes de um membro pai também devem ser excluídos com o membro pai. Se esse valor for definido como falso, os descendentes imediatos do membro pai serão promovidos ao nível no qual o membro pai residia anteriormente.

Observação sobre segurançaObservação sobre segurança

Um usuário só precisa ter permissões de exclusão para o membro pai para poder excluir o membro pai e seus descendentes. Um usuário não precisa excluir permissões nos descendentes.