Como Evitar que a Ordem das Opções de Coluna de Escolha Mude Após a Importação
🔍 WiseChecker

Como Evitar que a Ordem das Opções de Coluna de Escolha Mude Após a Importação

Ao importar dados para uma lista do SharePoint, a ordem das opções de uma coluna de escolha pode mudar inesperadamente. Isso acontece porque o processo de importação trata os valores como uma lista plana e pode reordená-los alfabeticamente ou por ID interno. Este artigo explica por que a ordem muda e fornece um método para preservar a sequência original durante e após a importação.

A causa raiz é que as ferramentas de importação do SharePoint, incluindo importações de Excel e CSV, não respeitam a ordem personalizada que você definiu nas configurações da coluna. Em vez disso, elas adicionam novos valores ou os classificam com base na fonte de dados. Você pode evitar isso preparando a lista de destino corretamente e usando um fluxo de trabalho de importação específico.

Este artigo aborda a causa técnica, uma correção passo a passo usando PowerShell e erros comuns a serem evitados. Após a leitura, você será capaz de importar dados de escolha sem perder a ordem de exibição pretendida.

Principais Conclusões: Preservando a Ordem da Coluna de Escolha na Importação

  • Configurações do Site > Configurações da Lista > Coluna de Escolha: Defina a ordem exata das opções antes de importar qualquer dado.
  • PowerShell com PnP.PowerShell: Use o cmdlet Set-PnPChoiceColumn para reordenar as opções após a importação, caso a ordem seja perdida.
  • Importação CSV com mapeamento de ID: Inclua o ID interno da escolha em seu arquivo de importação para corresponder aos valores existentes e evitar reordenação.

ADVERTISEMENT

Por que a Ordem da Coluna de Escolha Muda Após a Importação

As colunas de escolha do SharePoint armazenam opções em uma sequência específica que você define nas configurações da coluna. Ao importar dados do Excel ou de um arquivo CSV, o mecanismo de importação não lê a ordem existente da coluna. Em vez disso, ele processa cada linha e adiciona novas opções ao final da lista ou as classifica alfabeticamente. Esse comportamento é proposital, pois a ferramenta de importação trata a coluna de escolha como um campo de texto simples, não como uma lista estruturada com uma ordem predefinida.

O armazenamento interno dos valores de escolha usa uma matriz. Quando novos valores são adicionados durante a importação, o SharePoint reconstrói a matriz e pode classificá-la. A regra de classificação depende do método de importação:

  • Importação do Excel (Importação Rápida): Adiciona novos valores na ordem em que aparecem na planilha. Os valores existentes permanecem em suas posições originais, mas a lista combinada pode não corresponder à ordem pretendida.
  • Importação CSV (via PowerShell ou ferramentas de terceiros): Frequentemente classifica toda a lista de opções alfabeticamente após a importação.
  • Ferramenta de Migração do SharePoint (SPMT): Preserva a ordem da lista de origem apenas se a origem for outra lista do SharePoint. Se a origem for um arquivo CSV, comporta-se como uma importação CSV.

A mudança de ordem não é um bug. É um efeito colateral de como o processo de importação lida com metadados. Para evitá-lo, você deve predefinir a ordem exata na coluna de destino e garantir que o arquivo de importação use apenas valores que já existam nessa ordem.

Pré-requisitos para Evitar Mudanças de Ordem

Antes de iniciar a importação, conclua estas etapas:

  • Crie a lista do SharePoint de destino com a coluna de escolha já definida. Não crie a coluna durante a importação.
  • Defina as opções de escolha na ordem exata em que deseja que apareçam. Vá em Configurações da Lista > Coluna > Coluna de Escolha > Editar Coluna. Em “Digite cada opção em uma linha separada”, insira as opções na sequência desejada. Use as setas para cima e para baixo para reordená-las.
  • Prepare seu arquivo de importação (Excel ou CSV) para que a coluna de escolha contenha apenas valores que correspondam a uma das opções predefinidas. Qualquer novo valor que não esteja na lista será adicionado ao final ou causará um erro.

Passos para Preservar a Ordem da Coluna de Escolha Durante a Importação

Siga estas etapas para importar dados sem perder a ordem da coluna de escolha. Este método usa Excel para a importação e PowerShell como backup se a ordem ainda mudar.

  1. Defina a ordem exata das opções na lista de destino
    Abra a lista do SharePoint. Clique no ícone de engrenagem e selecione Configurações da Lista. Clique no nome da coluna de escolha. Em “Digite cada opção em uma linha separada”, insira as opções na ordem desejada. Clique em Salvar. Isso define a ordem base.
  2. Exporte a lista de destino para obter os IDs internos das opções
    Se você estiver importando muitas linhas, use PowerShell para exportar os IDs internos da coluna de escolha. Execute: Get-PnPChoiceColumn -List "NomeDaLista" -Identity "NomeDaColunaDeEscolha" | Select Choices. Isso retorna as opções com seus números de índice internos. O índice começa em 0. Anote o índice para cada valor de escolha.
  3. Prepare o arquivo de importação apenas com valores existentes
    Abra seu arquivo Excel ou CSV. Na coluna de escolha, substitua quaisquer valores novos ou com erros de ortografia pelo texto exato da lista predefinida. Não adicione novos valores. Salve o arquivo como .xlsx ou .csv.
  4. Importe o arquivo usando a Importação Rápida do SharePoint
    Na lista de destino, clique em Edição Rápida (visualização de grade) ou use a opção Importar do Excel. Cole ou carregue os dados. O SharePoint corresponderá os valores de escolha às opções de coluna existentes e manterá a ordem intacta, pois nenhum novo valor é adicionado.
  5. Se a ordem ainda mudar, execute uma correção com PowerShell
    Conecte-se ao SharePoint com PnP.PowerShell: Connect-PnPOnline -Url https://sualocacao.sharepoint.com/sites/seusite. Em seguida, execute: Set-PnPChoiceColumn -List "NomeDaLista" -Identity "NomeDaColunaDeEscolha" -Choices @("PrimeiraOpcao","SegundaOpcao","TerceiraOpcao"). Substitua a matriz pela sua ordem exata. Isso redefine a ordem sem afetar os dados existentes.

Método Alternativo: Usar uma Coluna de Pesquisa

Se você importa dados com frequência e precisa de controle rígido de ordem, considere substituir a coluna de escolha por uma coluna de pesquisa que referencie uma lista separada de opções. A coluna de pesquisa sempre exibe os itens na ordem definida na lista de origem. Crie uma lista chamada “OpcoesDeEscolha” com uma única coluna de texto. Adicione as opções na ordem desejada. Em sua lista principal, adicione uma coluna de pesquisa que aponte para OpcoesDeEscolha. Durante a importação, mapeie os valores de escolha para os IDs da pesquisa. Este método evita qualquer reordenação, pois a ordem da pesquisa está vinculada à lista de origem.

ADVERTISEMENT

Erros Comuns e Limitações

Arquivo de Importação Contém Novos Valores de Escolha Não Presentes na Lista de Destino

Se seu arquivo de importação incluir um valor de escolha que não existe na coluna de destino, o SharePoint o adiciona ao final da lista. Isso desloca a ordem de todos os valores subsequentes. Para corrigir, exclua o novo valor das configurações da coluna após a importação ou execute a correção com PowerShell para restaurar a ordem original.

Usando a Ferramenta de Migração do SharePoint com Fonte CSV

A Ferramenta de Migração do SharePoint (SPMT) não preserva a ordem das opções quando a fonte é um arquivo CSV. Ela trata a coluna de escolha como texto simples e adiciona valores na ordem em que aparecem no CSV. Para evitar isso, converta o CSV em uma lista do SharePoint primeiro e depois use o SPMT para migrar a lista para outro site. A migração de lista para lista preserva a ordem.

Coluna de Escolha com “Permitir Preenchimento de Opções” Habilitado

Quando “Permitir preenchimento de opções” está ativado, os usuários podem digitar valores personalizados. Durante a importação, esses valores personalizados são tratados como novas opções e adicionados à lista. Para evitar mudanças de ordem, desabilite essa configuração antes da importação. Vá em Configurações da Lista > Coluna > Coluna de Escolha > Editar Coluna. Desmarque “Permitir preenchimento de opções”. Importe os dados. Reative a configuração se necessário.

Permissões Necessárias para PowerShell

O cmdlet Set-PnPChoiceColumn requer pelo menos permissões de Edição na lista. Se você receber um erro de acesso negado, peça ao administrador do SharePoint para conceder as permissões necessárias ou execute o script de uma conta de administrador.

Comparação de Métodos para Preservar a Ordem da Coluna de Escolha

Item Predefinir Ordem + Importar Valores Existentes Redefinição com PowerShell Após Importação Alternativa com Coluna de Pesquisa
Esforço Baixo — requer preparação cuidadosa do arquivo Médio — requer conhecimento de PowerShell Alto — requer criação de uma lista separada
Confiabilidade da ordem Alta se nenhum novo valor for introduzido Muito alta — redefine a ordem exatamente Muito alta — ordem vinculada à lista de origem
Melhor para Importações únicas com dados limpos Importações recorrentes onde a ordem muda Importações frequentes com opções dinâmicas
Limitação Não lida com novos valores Requer permissões de administrador Adiciona complexidade à estrutura da lista

Após ler este artigo, você pode importar dados para colunas de escolha do SharePoint sem perder a ordem de exibição pretendida. Comece definindo a sequência exata das opções na lista de destino antes de qualquer importação. Se a ordem mudar apesar da preparação, execute o cmdlet Set-PnPChoiceColumn do PowerShell para restaurá-la. Para importações contínuas, considere substituir a coluna de escolha por uma coluna de pesquisa para um controle de ordem mais confiável. Como dica avançada, use o índice interno da escolha em seu arquivo de importação para mapear valores diretamente e evitar qualquer reordenação.

ADVERTISEMENT