Existe alguma maneira no SharePoint para mudar pontos de vista da biblioteca de documentos em uma base por usuário?

StackOverflow https://stackoverflow.com/questions/1834387

Pergunta

Estamos usando WSS 3.0 e me pediram para ver se os usuários podem definir modos de exibição padrão em uma base por usuário. Alguém tem conhecimento de qualquer método (programática ou através do próprio GUI) para dar aos usuários a capacidade de visualizações mudança padrão em uma base por usuário? Os 30 minutos de pesquisando e bisbilhotando nos menus administrativos acabou por ser infrutífera. Se não, isto é uma característica do MOSS 2007?

Foi útil?

Solução

Você provavelmente vai querer olhar para o público que é a funcionalidade no MOSS 2007.
Infelizmente ele não está disponível em WSS 3.0

Eis um resumo razoável. perfis de usuário e Público-alvo no SharePoint 2007

Outras dicas

Se você estiver trabalhando em WSS 3.0, você pode programaticamente swtich ou modificar vistas usando um Web Part que recebe o ListViewWebPart e modifica a consulta ou exibição em tempo real. Aqui está um código de exemplo que estou usando para filtrar o conteúdo de um determinado ponto de vista:

    private ListViewWebPart GetListViewWebPart()
    {
        ListViewWebPart webPart = new ListViewWebPart();

        foreach (WebPart wp in WebPartManager.WebParts)
        {
            if (wp.GetType() == typeof(ListViewWebPart))
            {
                webPart = (ListViewWebPart)wp;
            }
        }
        return webPart;
    }


    private void ApplyStrategySecurity(string camlFilter)
    {
        // Get the listview webpart
        ListViewWebPart wp = GetListViewWebPart();

        // Apply the query to the listview
        XmlDocument doc = new XmlDocument();
        doc.LoadXml(wp.ListViewXml);
        if (camlFilter.Length > 0)
        {
            XmlNode queryNode = doc.SelectSingleNode("//Query");
            XmlNode whereNode = queryNode.SelectSingleNode("Where");
            if (whereNode != null)
                queryNode.RemoveChild(whereNode);
            XmlNode newNode = doc.CreateNode(XmlNodeType.Element, "Where", string.Empty);
            newNode.InnerXml = camlFilter;
            queryNode.AppendChild(newNode);
        }
        wp.ListViewXml = doc.OuterXml;
    }
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top