Como personalizar o layout das suas listas e formulários no Microsoft 365 sem código
Com as opções de configuração e formatação das listas do Microsoft Lists e do SharePoint, podemos personalizar a forma como são apresentadas as colunas, as vistas e os formulários de inserção e edição de elementos sem necessidade de código personalizado.
Uma lista de SharePoint, Teams ou Microsoft Lists é um conjunto de informações que podem ser partilhadas com pessoas. Estas informações são constituídas por um conjunto de itens com metadados. Cada um destes metadados ou propriedades é armazenado numa coluna.
Quando uma lista é criada, tem, no mínimo, uma vista associada e formulários para criar e modificar os itens que contém. As vistas são formas de apresentar as informações da lista no navegador e são personalizáveis. Por exemplo, é possível filtrar os itens por data de criação ou modificar as colunas que são apresentadas, quer para expandir a informação, quer para a reduzir.
Embora a configuração básica das listas permita a personalização de vistas e formulários, é muito comum desenvolver código personalizado para satisfazer as necessidades dos clientes, tanto em termos de design como de funcionalidade. No entanto, isso nem sempre é necessário. Conhecer todas as possibilidades pode poupar tempo de desenvolvimento e facilitar a manutenção por parte dos utilizadores.
Algumas personalizações podem ser aplicadas através de opções de configuração de colunas.
Outras, quando a apresentação depende do valor de outra coluna, são aplicadas através da utilização de fórmulas condicionais.
Por último, outros formatos são aplicados através da construção de objetos JSON que substituem a visualização predefinida.
É este último ponto que constitui uma novidade do 365, através da qual, seguindo uma estrutura definida, é possível descrever os elementos HTML que são apresentados quando um campo é incluído numa vista de lista ou num formulário e os estilos que são aplicados a esses elementos.
As vistas são formas de apresentar as informações da lista no browser e podem ser personalizadas
É importante notar que a formatação aplicada não altera os dados, apenas a forma como são apresentados.
Exemplo Prático
Para fazer um teste, acedemos ao Microsoft Lists e criamos uma lista com o modelo "Problem Tracking". Adicione estas novas colunas:
Comentários, do tipo "Várias linhas de texto". Deve conter notas sobre a tarefa.
Solução, do tipo "Várias linhas de texto". Pretendemos que seja obrigatório acrescentar um comentário quando o problema estiver resolvido.
Ecrã, do tipo "Seleção".
Data de correção, do tipo "Data". O nome interno será "Datacorrecao", criando-o primeiro com este nome e modificando-o depois para "Data de Correção".
Reorganizar, mostrar e ocultar colunas
Para organizar a informação de uma forma que facilite a sua leitura e edição, é por vezes necessário ajustar a ordem das colunas na vista ou no formulário. Os passos para esta reorganização são os seguintes:
Nos formulários
Abra o formulário clicando em "Novo".
Selecione o menu de edição de colunas.
Arraste as colunas pela ordem em que as pretende ver.
Marque ou desmarque as colunas que pretende que sejam apresentadas. Tenha em atenção que, se uma coluna for obrigatória, não pode ser desmarcada.
Nas vistas
Nas vistas, estas alterações podem ser efetuadas através do menu de contexto da coluna. Para alterar a ordem, também é possível arrastar as colunas para a posição pretendida.
Mostrar e ocultar colunas com base no conteúdo de outras colunas
No nosso exemplo, quando um problema é resolvido, queremos ter mais informações sobre a solução efetuada. Tornaremos a solução visível apenas quando o estado do problema seja "Concluído". A data de correção também só será apresentada quando o estado seja "Concluído".
Para isso, devemos utilizar as fórmulas condicionais e seguir os seguintes passos:
Abra o formulário clicando em "Novo".
Selecione o menu de edição de colunas.
No menu de contexto da coluna “Solução”, clique em "Editar fórmula condicional".
Inclua a fórmula =if([$Status] == 'Completado', 'true', 'false'). Lembre-se de que os nomes das colunas nas fórmulas devem ser os nomes internos, que devem ser precedidos de "$" e colocados entre parênteses retos. No exemplo, o nome interno da coluna "Estado" é "Status".
Incluímos a mesma fórmula na coluna da data de correção.
Pode ver exemplos de fórmulas condicionais de acordo com os tipos de campo aqui.
Modificação do formulário
Através da configuração do formulário podemos descrever como será a estrutura do cabeçalho, rodapé e corpo. Neste caso, devemos aplicar a formatação utilizando objetos JSON.
Na nossa lista de exemplo, existem campos relacionados com a descrição do problema, outros que expandem a informação e outros que nos permitem rastreá-la. Neste sentido, seria útil agrupar os campos nestas secções que organizam os campos. Além disso, vamos também modificar o cabeçalho para o personalizar com um novo título e ícone.
Pode encontraraquitodas as informações necessárias sobre a estrutura dos objetos JSON e exemplos para começar.
Cabeçalho
Desta vez, no menu apresentado no formulário "Novo", selecionaremos a opção "Configurar design" e, em primeiro lugar, configuraremos o cabeçalho.
Copiamos o JSON da secção de cabeçalho da página de Microsoft. Observe na imagem a seguir como, com uma estrutura predefinida, é construído o HTML que conterá o cabeçalho. Neste caso, um ícone e um texto com estilos personalizados.
O texto conterá a palavra "Problema" e o título do item. Repare que à medida que o título muda, o cabeçalho também muda. Qualquer coluna do item precedida por "$" e entre parênteses retos pode ser utilizada.
Esta é a diferença entre o cabeçalho predefinido e com a nossa modificação:
Corpo
Na configuração do layout do formulário, selecione o valor "Texto" no menu pendente. Lembre-se de que, desta vez, o nosso objetivo é facilitar o preenchimento do formulário, agrupando as informações nas seguintes categorias:
Dados básicos do problema.
Dados de monitorização.
Outras informações.
Copiamos o JSON da secção "Configurar um corpo personalizado com uma ou mais secções" da página da Microsoft e modificamo-lo para se adequar ao nosso exemplo:
Cada secção pode ter um título.
Em "fields" temos de incluir os “display names” de todas as colunas que serão incluídas na secção.
Incluímos uma secção vazia que conterá outros campos visíveis que não foram incluídos nas outras secções.
Este é o aspeto do nosso formulário modificado, que também tem um design responsive.
Lembre-se de que as colunas "Solução" e "Data de correção" serão apresentadas quando o estado for "Concluído".
Se repetirmos os passos da organização da coluna, verá que estão agora também incluídas as secções:
Por último, validaremos se os dados introduzidos cumprem os seguintes requisitos:
A data da notificação não pode ser superior ao dia X.
A data de correção é igual ou superior à data de notificação.
Podemos incluir validações dos valores de uma coluna ou de várias colunas do formulário através da utilização de fórmulas condicionais, que podem ser aplicadas tanto à validação de uma coluna como a todo o formulário.
É importante notar que apenas a validação ao nível da lista pode ser incluída, pelo que a mensagem de erro deve ser clara e incluir os detalhes de todos os dados validados.
No nosso formulário
Na vista, selecione "Editar" na coluna "Data da notificação".
Em " Validação da coluna", incluiremos a fórmula "=DateReported<TODAY()". A mensagem de erro será "A data da notificação não pode ser superior ao dia atual".
Na configuração da lista> Configuração da validação, incluímos a fórmula "=[Data de correção]>=[Data de notificação]" e a mensagem "A data de correção deve ser igual ou superior à data de notificação. A data de notificação não pode ser superior ao dia atual".
Uma vez configurado, ao criar um novo item com datas incorretas, serão apresentadas mensagens de validação:
Modificação de uma vista
Tal como acontece com os formulários, podemos formatar uma vista de lista através da configuração. Se nem todos os casos forem abrangidos, temos a opção de modificar o JSON associado.
Podemos aplicar a formatação a:
Colunas.
Vistas. Neste caso, existem dois tipos de layout:
Layout de Lista: os itens são apresentados como numa tabela.
Layout de Galeria: os itens são apresentados em caixas.
No nosso exemplo, vamos fazer estas modificações a partir da opção "Formatar vista atual":
Modificar a coluna "Estado" de acordo com o seu valor com cores e ícones.
Aceda à modificação da formatação da vista atual.
Clique em "Aplicar formatação às colunas".
Selecione a coluna "Estado", em "Cores de fundo", e edite os estilos:
Marcar a vermelho todo o item se a prioridade for "Crítica" e se estiver pendente de solução há mais de 5 dias:
Aceda à modificação do formato da vista atual.
Clique em "Gerir regras" em "Formatação condicional".
Crie a seguinte regra:
Com as opções que temos, não podemos definir a regra de que a data da notificação deve ser inferior a Hoje menos um número de dias, pelo que, neste caso, temos de modificar o JSON associado ao formato.
Clique em "Modo avançado" e modifique o JSON para subtrair 5 dias à data de notificação.
A vista terá agora a seguinte apresentação:
Conhecer as possibilidades de configuração das listas permite-lhe tirar o máximo partido delas para facilitar o acesso à informação e torná-la mais atrativa. Em muitos casos, é possível evitar a utilização de código e tornar a manutenção mais fácil para os utilizadores.
Os cookies deste site são usados para personalizar conteúdos e anúncios, fornecer funcionalidades de redes sociais e analisar o tráfego. Além disso, partilhamos informações sobre a sua utilização do website com os nossos parceiros de redes sociais, publicidade e análise web, que podem combiná-lo com outras informações que lhes forneceu ou que recolheu da sua utilização dos seus serviços. [+ info]
Selecione os cookies que pretende aceitar
Os cookies necessários ajudam a tornar um website utilizável ativando funções básicas como navegar na página e aceder a áreas seguras do site. O site não pode funcionar corretamente sem estes cookies.
[+info]
Nome
Descrição
Tipo
Fornecedor
com.cookies.table.life
COOKIE_SUPPORT
Este cookie determina se o seu navegador aceita cookies.
HTTP
izertis.com
INGRESSCOOKIE
Grava a piscina que serve o visitante. Isto é usado em relação ao equilíbrio de carga para otimizar a experiência do utilizador.
HTTP
izertis.com
JSESSIONID
Preserva os estados dos utilizadores em todos os pedidos da página.
HTTP
izertis.com
LFR_SESSION_STATE_20103
Cookie utilizado pelo portal web para controlo de tempo de sessão.
HTTP
izertis.com
Os cookies preferenciais permitem ao site lembrar informações que alteram a forma como a página se comporta ou como parece, como o seu idioma preferido ou a região em que está localizada.
[+info]
Nome
Descrição
Tipo
Fornecedor
com.cookies.table.life
GUEST_LANGUAGE_ID
Os cookies preferenciais permitem ao site lembrar informações que alteram a forma como a página se comporta ou como parece, como o seu idioma preferido ou a região em que está localizada. ...
HTTP
izertis.com
lang
Lembre-se do idioma selecionado por um utilizador para ver uma página web
HTTP
ads.linkedin.com
Os cookies estatísticos ajudam os proprietários do site a entender como os visitantes interagem com as páginas web, recolhendo e fornecendo informações de forma anónima.
[+info]
Nome
Descrição
Tipo
Fornecedor
com.cookies.table.life
_ga
Regista uma identificação única que é usada para gerar dados estatísticos sobre como a visita utiliza o website.
HTTP
izertis.com
_gat
Usado pelo Google Analytics para controlar a taxa de pedidos.
HTTP
izertis.com
_gid
Regista uma identificação única que é usada para gerar dados estatísticos sobre como o visitante utiliza o site.
HTTP
izertis.com
bounce
Determina se um visitante sai imediatamente do site - Esta informação é utilizada para estatísticas internas e análise pelo operador web.
Pixel
adnxs.com
cb
Recoge información de la dirección de IP del visitante, localización geográfica y navegación. Esta información se utiliza para la optimización interna y estadísticas para el operador de la web.
Pixel
pixel.prfct.co
cb
Recolher informações sobre o endereço IP do visitante, localização geográfica e navegação. Esta informação é utilizada para otimização interna e estatísticas para o operador web.
Pixel
pixel-geo.prfct.co
personalization_id
Definido pelo Twitter - O cookie permite ao visitante partilhar conteúdo sonoro no seu perfil de Twitter.
HTTP
twitter.com
seg
Regista dados estatísticos do comportamento dos visitantes na web. Isto é usado para análise interna pelo operador web.
Pixel
adnxs.com
seg
Regista dados estatísticos do comportamento dos visitantes na web. Isto é usado para análise interna pelo operador web.
Pixel
pixel-geo.prfct.co
Os cookies de marketing são usados para rastrear os visitantes em sites. A intenção é exibir anúncios relevantes e envolventes a cada utilizador e, portanto, mais valiosos para editores e anunciantes de terceiros.
[+info]
Nome
Descrição
Tipo
Fornecedor
com.cookies.table.life
__ss
Recoge información del comportamiento del visitante en múltiples webs - Esta información se utiliza dentro de la web para optimizar la relevancia de la publicidad. La cookie también ayuda a determinar cómo el visitante accede a la web
HTTP
izertis.com
__ss_referrer
Recolher informações sobre o comportamento do visitante em vários sites - Esta informação é usada dentro da web para otimizar a relevância da publicidade. O cookie também ajuda a determinar como o visitante acede ao site.
HTTP
izertis.com
__ss_tk
Recolher informações sobre o comportamento do visitante em vários sites - Esta informação é usada dentro da web para otimizar a relevância da publicidade. O cookie também ajuda a determinar como o visitante acede ao site
HTTP
izertis.com
_fbp
Usado pelo Facebook para fornecer uma série de produtos publicitários, como licitação em tempo real de anunciantes de terceiros.
HTTP
izertis.com
A3
Recoge información del comportamiento del visitante en múltiples webs - Esta información se utiliza dentro de la web para optimizar la relevancia de la publicidad.
HTTP
yahoo.com
ads/ga-audiences
Recolher informações sobre o comportamento do visitante em vários sites - Esta informação é usada dentro da web para otimizar a relevância da publicidade.
Pixel
google.com
anj
Registra una identificación única que identifica el dispositivo de un usuario que vuelve. La identificación se utiliza para los anuncios específicos.
HTTP
adnxs.com
bcookie
Regista um ID único que identifica o dispositivo de um utilizador de retorno. A identificação é usada para anúncios específicos.
HTTP
linkedin.com
bscookie
Utilizado pelo serviço de redes sociais LinkedIn para acompanhar a utilização de serviços embutidos
HTTP
linkedin.com
cs
Esta cookie se utiliza para mejorar la relevancia de anuncios por medio de recoger datos del visitante en múltiples sitios web. Este intercambio de datos de visitante lo ofrece habitualmente un in tercambio de anuncios o centro de datos de terceros.
Pixel
pixel-geo.prfct.co
d/px
Este cookie é usado para melhorar a relevância dos anúncios, recolhendo dados de visitantes em vários sites. Esta troca de dados de visitantes é geralmente oferecida por uma troca de anúncios ou por um centro de dados de terceiros.
Pixel
adsymptotic.com
fr
Usado pelo Facebook para fornecer uma série de produtos publicitários, como licitação em tempo real de anunciantes de terceiros.
HTTP
facebook.com
getuid
O gestor de audiências configura este cookie para determinar a hora e a frequência de nenhum tempo de dados do visitante. Sincronizar o cookie de dados é usado para sincronizar e recolher dados de visitantes de vários websites.
Pixel
adnxs.com
i
O gestor de audiências configura este cookie para determinar a hora e a frequência de nenhum tempo de dados do visitante. Sincronizar o cookie de dados é usado para sincronizar e recolher dados de visitantes de vários websites. ...
HTTP
openx.net
i/adsct
Regista dados anónimos de utilizadores, tais como o seu endereço IP, localização geográfica, websites visitados e quais anúncios o utilizador clicou, de forma a otimizar a exibição de anúncios com base no movimento do utilizador em websites que utilizam a mesma rede de anúncios. ...
Pixel
twitter.com
IDE
Utilizada por Google DoubleClick para registrar e informar sobre las acciones del usuario en el sitio web tras visualizar o hacer clic en uno de los anuncios del anunciante con el propósito de medir la eficacia de un anuncio y presentar anuncios específicos para el usuario.
HTTP
doubleclick.net
koitk
Utilizado pelo Google DoubleClick para gravar e reportar ações de utilizador no site após visualizar ou clicar num dos anúncios do anunciante com o propósito de medir a eficácia de um anúncio e apresentar anúncios específicos do utilizador.
HTTP
marketingautomation.services
lang
Definido pelo LinkedIn quando uma página web contém um painel incorporado Siga-nos.
HTTP
linkedin.com
lidc
Utilizado pelo serviço de redes sociais LinkedIn para acompanhar o uso de serviços incorporados.
HTTP
linkedin.com
lissc
Utilizado pelo serviço de redes sociais LinkedIn para acompanhar o uso de serviços incorporados.
HTTP
linkedin.com
na_id
Costumava reconhecer o visitante na sua reentrada. Isto permite que o site registem o comportamento do visitante e facilitem a funcionalidade de partilha de redes sociais fornecida por Addthis.com.
HTTP
addthis.com
ouid
Define uma cadeia de identificação para um visitante específico. Isto é usado para reconhecer o visitante na sua reentrada. Além disso, permite ao site registar o comportamento do visitante e facilita a função de partilha nas redes sociais fornecidas por Addthis.com.
HTTP
addthis.com
pa_#_ts
Usado em sites que usam a mesma rede de anúncios para mostrar anúncios a outros para nunciants de rede.
HTTP
prfct.co
pa_uid
Utilizada en sitios web que utilizan la misma red publicitaria para mostrar anuncios a los otros anunciantes de la red.
HTTP
prfct.co
test_cookie
Usado em sites que usam a mesma rede de anúncios para mostrar anúncios a outros anunciantes na rede.
HTTP
doubleclick.net
tr
Usado pelo Facebook para fornecer uma série de produtos publicitários, como licitação em tempo real de anunciantes de terceiros.
Pixel
facebook.com
uid
Cria um ID de utilizador único gerado por uma máquina. AddThis, que é um anúncio da Clearspring Technologies, utiliza a identificação do utilizador para permitir que o utilizador partilhe conteúdos em várias redes sociais, fornecendo estatísticas detalhadas a vários fornecedores.
HTTP
addthis.com
usermap
Utilizada para presentar al visitante contenido y publicidad relevante - El servicio está provisto por grupos de proveedores de publicidad externos, que facilitan ofertas en tiempo real a los anunciantes.
Pixel
pixel-geo.prfct.co
UserMatchHistory
Utilizado para apresentar ao visitante conteúdo e publicidade relevantes - O serviço é fornecido por grupos de fornecedores de publicidade de terceiros, que fornecem ofertas em tempo real aos anunciantes.
HTTP
linkedin.com
uuid2
Regista um ID único que identifica o dispositivo de um utilizador de retorno. A identificação é usada para anúncios específicos.
HTTP
adnxs.com
VISITOR_INFO1_LIVE
Tente calcular a largura de banda do utilizador em páginas com vídeos incorporados no YouTube.
HTTP
youtube.com
w/1.0/sd
Registem dados de visitantes como o seu endereço IP, localização geográfica e envolvimento publicitário. Esta informação é usada para otimizar a publicidade em sites que utilizam OpenX.net.
Pixel
openx.net
YSC
Grave um ID único para manter as estatísticas dos vídeos do YouTube que o utilizador viu.
HTTP
youtube.com
yt-remote-cast-installed
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-connected-devices
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-device-id
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-fast-check-period
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-session-app
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.
HTML
youtube.com
yt-remote-session-name
Registra las preferencias del reproductor de vídeo del usuario al ver vídeos incrustados de YouTube.
HTML
youtube.com
li_sugr
Grava as preferências dos jogadores de vídeo do utilizador ao ver vídeos incorporados no YouTube.