none
Se a coluna A tiver valor ela é exibida, se não o valor da coluna B é exibido no lugar do valor da coluna A. Como alterar uma XsltListViewWebPart no sharepoint? RRS feed

  • Pergunta

  • Olá,
    Tenha uma XsltListViewWebPart.
    Esta XsltListViewWebPart exibe os documento de uma biblioteca de formulário infopaths.

    O que preciso fazer é colocar uma condição em umas das colunas.
    É o seguinte:

    Não consigo criar um campo calculado para uma biblioteca de formulários infopaths.
    Por algum motivo o campo calculado não funciona.
    Já criei um post sobre isso, mas não sei ainda como tratar este problema.

    Na minha biblioteca de formulário eu tenho duas colunas.
    A coluna A e a coluna B.

    Para alguns itens da minha biblioteca eu não tenho informação na coluna A e sim na coluna B.
    O que quero fazer é validar as duas colunas.

    Se a coluna A tiver informação a mesma é mostrada, caso contrário o valor da coluna B será mostrado na coluna A.

    Entenderam?

    Teria alguma forma de fazer isso?
    Eu tentei exportar esta XsltListViewWebPart, mas não tenho esta opção.

    Obrigado

    k2rto4-Pb - Analista SharePoint


    • Editado TI DEV quarta-feira, 12 de setembro de 2012 17:00
    quarta-feira, 12 de setembro de 2012 17:00

Todas as Respostas

  • k2rto4-Pb,

    Nesse exemplo que você disse:
    Se a coluna A tiver informação a mesma é mostrada, caso contrário o valor da coluna B será mostrado na coluna A.

    Existe essa possibilidade?

    Desse jeito, nenhuma das duas colunas ficariam visíveis, correto?


    Atenciosamente, Rafael Fausto


    • Editado Rafael Fausto quinta-feira, 13 de setembro de 2012 17:47
    quarta-feira, 12 de setembro de 2012 18:31
  • Olá Rafael,

    Tendo como base a figura que voce mostrou, o que vai acontecer é:

    A coluna B não será exibida e o valor da coluna b para a linha 2 será mostrada na coluna A na linha 2.

    Eu consegui fazer isso via SharePoint Designer.

    O que eu fiz foi uma edição na coluna que desejo fazer a alteração mencionada acima.
    No sharepoint designer eu abri a página e selecionei a coluna. Depois eu fui no menu superior de nome Design e escolhi a opção Personalizar XSLT -> Personalizar Item.

    Assim consegui ter acesso a criação de informação para a coluna.
    Bastou então adicionar a seguinte condição na parte que recebe o valor na coluna:

    			<xsl:choose>
          				<xsl:when test="$thisNode/@*[name()=current()/@Name] != ''">
    						<xsl:value-of select="$thisNode/@Coluna A"/>
    			       </xsl:when>
          				<xsl:when test="$thisNode/@*[name()=current()/@Name] = ''">
    						<xsl:value-of select="$thisNode/@Coluna B"/>
    			       </xsl:when>
        			</xsl:choose> 

    Com esta alteração tudo funcionou aqui.
    Entretanto um novo problema surgiu.

    Quando acesso a página no browser e tento acessar o menu do Item (Exibir Propriedades, Editar Propriedades, etc...) a seguinte mensagem de erro é mostrada:

    Este item não está mais disponível. Pode ter sido excluído por outro usuário. Clique em 'OK' para atualizar a página.

    Voce conhece este problema?

    Obrigado


    k2rto4-Pb - Analista SharePoint


    • Editado TI DEV quinta-feira, 13 de setembro de 2012 16:32
    quinta-feira, 13 de setembro de 2012 16:31
  • Olá,

    Encontrei um novo problema agora. Estranho este problema.

    Se a minha visão tem os campos A e B eu consigo fazer a verificação e tudo funciona bem.

    Mas se eu escondo o um dos campos a validação não funciona mais.

    O campo fica em branco.

    Teria alguma forma de resolver isto?

    Obrigado


    k2rto4-Pb - Analista SharePoint

    quinta-feira, 20 de setembro de 2012 20:57