none
Ocultar campo em Lista RRS feed

  • Pergunta

  • Estou fazendo um WorkFlow baseado em um exemplo, porem existem coisas que não consigo reproduzir e gostaria de saber como.

    1) O caso é uma solicitação de Ausência. Na lista preciso de uma aprovação e com isso crio um campo chamado Status, porem este campo não pode ser visivel ao criar o item da lista, so pode ser visto quando o usuario aprovador for abrir este item para aprovar/recusar. como fazer?

    2) Verifiquei que é criado um Workflow para cada ação, um automatico quando é criado e ja seta o item de status para "Aprovação Pendente". Ate ai tudo certo, porem o segundo workflow("AprovarRecusar") é acionado manualmente pelo aprovador. No exemplo existe uma lista onde mostra alguns dados e um link de "Aprovar/Recusar" que leva a iniciar o workflow. Como fazer essa visualização com esse botão que inicia o Workflow?

     


    Desenvolvedor Web
    • Editado Daniel Dac segunda-feira, 5 de abril de 2010 20:31 erro digitação
    segunda-feira, 5 de abril de 2010 20:31

Respostas

  • certo daniel,

    eu tive um problema um poquinho diferente, mas que a mesma solucao talvez pode ajuda-lo

     

    eu estava desenvolvendo uma lista que gerava Ids automaticos para um campo, e o cliente na criacao nao pode altera-lo para nao perder-ser referencia do item.

    eu utilizei java script e coloquei esse script editando o NewForm.aspx da lista desejada atraves do Sharepoint Designer 2007:

     

    <asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
    <script type="text/javascript" language="javascript">
    _spBodyOnLoadFunctionNames.push("esconder");
        function esconder(){
        $("input[title='Nome da Coluna ']").hide();
        }
    </script>


    como pode ver, eu coloquei o script logo apos o "PlaceHolderMain" (é preciso colocar aqui, pois é onde o script consegue iniciar)

    assim eu consegui esconder o campo (no meu caso uma textbox) e o usuario nao conseguia nem ver o campo.

     

    espero que possa ajuda-lo :)

    • Marcado como Resposta Daniel Dac terça-feira, 13 de abril de 2010 19:41
    terça-feira, 13 de abril de 2010 19:33

Todas as Respostas

  • Olá,

    tem duas formas: 1 - Através do SPD; 2 - Utilizando uma feature chamada ListManager (http://sp2010listmanager.codeplex.com/).

    Através do ListManager é muito mais facil gerenciar as listas, porém em relação à ocultar campo ele somente permite que o administrador da listar (adm user) visualize o campo.

    Atrvés do SPD é legal também, um pouco mais trabalhoso mais obtem sua necessidade.

    SPD - http://www.sharepoint911.com/blogs/laura/Lists/Posts/Post.aspx?List=676af157%2D7d96%2D4e15%2Da987%2D54b8a3e4d948&ID=3

    falow


    igords
    sexta-feira, 9 de abril de 2010 15:25
  • O listManager seria somente para a versão 2010 pelo que vi. Eu utilizo a 2007.

    No SPD é estranho, pois aqui não consigo achar o formulario da forma que vejo na web. Quando abro no SPD ele mostra um webpart com "colunas genericas" e não as que realmente são do form.


    Desenvolvedor Web
    terça-feira, 13 de abril de 2010 13:31
  • ola daniel, me responda uma duvida:

     

    os formularios de uma lista do sharepoint, incluem: formulario da criacao de um item, de edicao, etc (esses formularios podem ser vistos no sharepoint designer)

     

    o seu problema eh: no formulario de criacao o cliente nao pode editar ou ver um campo, mas no de edicao(apos o item ser criado) ele pode ver.

    é esse seu problema e pedido de solucao?

    terça-feira, 13 de abril de 2010 19:12
  • Exatamente.

    Meu objetivo é: Usuarios preenchem uma lista com os dados pessoais por exemplo, e depois o aprovador e SOMENTE o aprovador quando acessa esse registro a opção de "Aprovar" ficaria visivel.

    No SPD todos os forms dentro da lista(NewForm.aspx, EditForm.aspx, etc..) que abro, mostram como se fosse uma web part generica com os nomes assim: "Nome da coluna 1, Nome da coluna 2..."  e não os que realmente aparecem renderizados quando se acessa a lista pelo Sharepoint. 

     


    Desenvolvedor Web
    terça-feira, 13 de abril de 2010 19:23
  • certo daniel,

    eu tive um problema um poquinho diferente, mas que a mesma solucao talvez pode ajuda-lo

     

    eu estava desenvolvendo uma lista que gerava Ids automaticos para um campo, e o cliente na criacao nao pode altera-lo para nao perder-ser referencia do item.

    eu utilizei java script e coloquei esse script editando o NewForm.aspx da lista desejada atraves do Sharepoint Designer 2007:

     

    <asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
    <script type="text/javascript" language="javascript">
    _spBodyOnLoadFunctionNames.push("esconder");
        function esconder(){
        $("input[title='Nome da Coluna ']").hide();
        }
    </script>


    como pode ver, eu coloquei o script logo apos o "PlaceHolderMain" (é preciso colocar aqui, pois é onde o script consegue iniciar)

    assim eu consegui esconder o campo (no meu caso uma textbox) e o usuario nao conseguia nem ver o campo.

     

    espero que possa ajuda-lo :)

    • Marcado como Resposta Daniel Dac terça-feira, 13 de abril de 2010 19:41
    terça-feira, 13 de abril de 2010 19:33
  • valeu.. Ja deu uma luz.. esconde o controle e não a linha toda, mas ja ajudou bastante.
    Desenvolvedor Web
    terça-feira, 13 de abril de 2010 19:42
  • Olá Daniel,

    Ei sei que você já resolveu o seu problema, mas existe uma maneira de ocultar campo no  SharePoint 2010 com o PowerShell, quem sabe a mesma duvida pode ser de outras pessoas que estão utilizando o SharePoint 2010. Segue link com mais informações:
    http://sonieldefaria.wordpress.com/2010/08/08/ocultando-campo-em-uma-lista-sharepoint-com-powershell/

    Espero que este link possa ajudar outras pessoas.

    Abraço!

    segunda-feira, 9 de agosto de 2010 23:25