Você tem uma lista do SharePoint com datas de vencimento e quer que itens atrasados se destaquem automaticamente. Sem formatação, itens vencidos parecem iguais aos atuais, dificultando a identificação de tarefas críticas. A formatação JSON de listas do SharePoint permite alterar cores de células ou linhas com base em condições de data. Este artigo explica o código JSON necessário e mostra as etapas exatas para aplicá-lo a qualquer coluna de lista do SharePoint.
Principais conclusões: Formatação JSON para itens atrasados
- Objeto JSON de formatação de coluna: Um bloco de código que compara a data atual com o campo Data de Vencimento e aplica fundo vermelho a itens atrasados.
- Objeto JSON de formatação de linha: Um bloco de código que destaca a linha inteira quando a Data de Vencimento está no passado, tornando tarefas atrasadas visíveis em qualquer coluna.
- Configurações de coluna da lista do SharePoint > Formatar coluna: O caminho do menu onde você cola o código JSON para aplicar formatação condicional sem desenvolvimento personalizado.
Como a formatação JSON funciona para condições de data
A formatação JSON em listas do SharePoint usa um conjunto simples de pares chave-valor para alterar a aparência de colunas ou linhas. Você não precisa de experiência em programação. O mecanismo de formatação é executado no navegador quando um usuário abre a lista. Ele não modifica os dados subjacentes.
A lógica central para itens atrasados usa o operador @now, que retorna a data e hora atuais. Você compara esse valor com seu campo de data, geralmente chamado [$DueDate] ou [$Deadline]. Quando o campo de data é anterior a @now, o item está atrasado.
Pré-requisitos
Antes de começar, confirme se estas condições são atendidas:
- Você tem uma lista do SharePoint com uma coluna de Data e Hora chamada DueDate ou um campo de data equivalente.
- Você tem pelo menos permissão de Edição na lista para modificar as configurações da coluna.
- Você está usando uma exibição moderna da lista do SharePoint (não uma exibição clássica).
Etapas para aplicar formatação JSON no nível da coluna para itens atrasados
Este método altera a cor de fundo das células da coluna Data de Vencimento quando a data está no passado.
- Abra sua lista do SharePoint
Navegue até a lista que contém a coluna de data de vencimento. Clique em qualquer item para garantir que você está na exibição da lista. - Abra as configurações da coluna
Selecione o cabeçalho da coluna do seu campo de data. Clique na seta suspensa e escolha Configurações da coluna e depois Formatar esta coluna. - Mude para o editor JSON
No painel Formatar coluna, clique em Modo avançado na parte inferior. Isso abre um editor de texto onde você pode colar o código JSON. - Cole o JSON de destaque de atraso
Copie e cole o seguinte código no editor:{
"$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
"elmType": "div",
"txtContent": "@currentField",
"style": {
"background-color": "=if(@currentField < @now, 'red', 'transparent')", "color": "=if(@currentField < @now, 'white', 'inherit')", "padding": "5px" } } - Visualize e salve
Clique em Visualizar para ver o efeito. Se itens com datas no passado mostrarem fundo vermelho, clique em Salvar. Caso contrário, verifique se o nome da coluna de data corresponde ao campo usado no JSON.
Etapas para aplicar formatação JSON no nível da linha para itens atrasados
A formatação de linha destaca a linha inteira quando qualquer coluna atende à condição de atraso. Isso é útil quando você quer que o status de atraso seja visível mesmo se a coluna de data estiver fora da tela.
- Abra a formatação da exibição da lista
Na sua lista do SharePoint, clique no botão Formatar exibição atual próximo ao canto superior direito da lista. Parece um ícone de pincel. - Mude para o modo avançado
No painel Formatar exibição, clique em Modo avançado para abrir o editor JSON para formatação de linha. - Cole o JSON de nível de linha
Cole o seguinte código no editor:{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/row-formatting.schema.json",
"additionalRowClass": "=if([$DueDate] < @now, 'ms-bgColor-red ms-fontColor-white', '')" }
Substitua[$DueDate]pelo nome interno real do seu campo de data, se for diferente. - Salve a exibição
Clique em Salvar para aplicar a formatação de linha. As linhas atrasadas agora terão fundo vermelho com texto branco.
Erros comuns e limitações
O JSON não destaca itens com vencimento hoje
A condição @currentField < @now trata itens com vencimento hoje como não atrasados porque @now inclui a hora atual. Se uma tarefa vence à meia-noite e a hora atual é 10:00, o campo de data ainda é tecnicamente hoje e não é menor que agora. Para incluir hoje, use <= em vez de < no operador de comparação.
Incompatibilidade de nome interno da coluna
Se sua coluna de data se chama "Due Date" com espaço, o nome interno é Due_x0020_Date. Usar [$Due Date] no JSON não funcionará. Para encontrar o nome interno, vá para as configurações da lista, clique na coluna e veja o parâmetro de URL Field=. Use esse valor dentro de [$...].
A formatação não aparece na impressão ou exportação
A formatação JSON é uma alteração apenas visual. Ela não afeta os dados ao imprimir a exibição da lista ou exportar para Excel. A condição de atraso deve ser avaliada separadamente se você precisar de saída formatada em relatórios.
Formatação de coluna vs formatação de linha: principais diferenças
| Item | Formatação de coluna | Formatação de linha |
|---|---|---|
| Escopo | Apenas a célula da coluna formatada | Linha inteira do item da lista |
| Esquema JSON | Esquema de formatação de coluna | Esquema de formatação de linha |
| Onde aplicar | Configurações da coluna > Formatar esta coluna | Formatar exibição atual > Modo avançado |
| Melhor para | Destacar uma única célula de data | Tornar itens atrasados visíveis em qualquer coluna |
Agora você pode aplicar formatação JSON para destacar itens atrasados em suas listas do SharePoint. Comece com a formatação de coluna para testar a condição em uma única célula. Depois, migre para a formatação de linha se precisar que a linha inteira mude de cor. Para condições mais avançadas, explore o operador @now combinado com campos adicionais como [$Status] para destacar apenas itens atrasados que não estão marcados como concluídos.