Category Archives: SharePoint

Usando “Pessoa ou grupo” em uma coluna calculada

As pessoas comumente perguntam sobre como usar uma coluna de tipo de dados "pessoa ou grupo" em outra coluna de dados, digite "Calculado".

Linha inferior, Isso não funciona no WSS 3.0 (ou MOSS).

Ao adicionar uma coluna calculada, WSS mostra a lista de campos permite que você usar para o cálculo. Se você digitar em nome de uma coluna que não está na sua lista, Diz-lhe:

Uma ou mais referências de coluna não são permitidas, Porque as colunas são definidas como um tipo de dados que não é suportado em fórmulas.

Solução alternativa: Usar um manipulador de evento. O manipulador de evento é acionado quando o usuário salva o item. Ele executa a atualização que você gostaria que a coluna calculada para fazer por você.

Links úteis sobre calculado campos em geral:

Aviso rápido: Eu acredito que o acima para ser verdadeiras e exactas, Mas já vi bastante inteligentes truques aqui e ali no MOSS/WSS que não ficaria muito surpreso (agog se você) Se alguém já descobriu uma maneira de fazer isso sem recorrer ao código. Se você descobriu contornar inteligente ou conhece alguém que fez, por favor me avise!

WSS/MOSS me diz: “A página foi modificada por outro autor em …” Mas, na verdade, Não foi.

Fizemos alguns pesados re-organização de nossa taxonomia local através do "Gerenciar conteúdo e estrutura". Por razões desconhecidas para mim, Este processo (Embora trabalhando no principal) quebrou alguns links de navegação no lançamento rápido. Os links quebrados são caracterizados por:

  • URL errada. Por exemplo, deve ser "/ sites/serviços/recursos humanos /…". No entanto, o novo link é "/ sites/empresas/recursos humanos /…".
  • Bits repetidas na seqüência de consulta da rubrica, como em:

/sites/departments/HumanResources/_layouts/viewlsts.aspx?BaseType = 0?BaseType = 0?BaseType = 0?BaseType = 0

Isso é bastante fácil de corrigir através de navegação/configurações do site. Exceto, MOSS apresenta-me com isto quando tento fazê-lo:

imagem

O fato é que, Ninguém está fazendo qualquer mudança de (Além de mim, É claro).

Uma busca rápida aparece esta discussão de fóruns do MSDN: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1691577&SiteID=1

William Heurdier estabelece-lo muito bem na penúltima (a partir de 10/02/07) Postar:

É de fato:

Para redefinir a títulos corrompidos, Você tem que :

– remover todas as listas de rubrica corrompido

– remover cabeçalho corrompido

– As definições de lista, Adicionar uma lista removida para o lançamento rápido (Isto regenerar um título não corrompido)

Então está pronto para ir….


Especialista de SharePoint – A Sogeti Cap Gemini Suíça

Eu estava um pouco confuso porque eu deixava com vontade de ir para a página de navegação, Faça a alteração e então começar a batida com a "página foi modificada" Mensagem. Eventualmente, Eu percebi que eu tinha que ir para as configurações de lista e remover/adicionar ao lançamento rápido. Que fez o truque. Momentos felizes estão aqui outra vez!

</fim>

Subscreva ao meu blog!

Problemas com “Fazer uma pausa até à data” atividade em fluxos de trabalho criados pelo SPD

ATUALIZAÇÃO 12/10/07: Hotfix conforme descrito no MSDN KB929816 resolveu o problema por nós mencionados abaixo. Obter o hotfix e, em seguida, instalar em cada servidor no farm. Em seguida, utilitário de configuração do SharePoint em cada servidor. Aqui está o link Support MS para que KB: http://support.microsoft.com/kb/932816.

Plano de fundo:

Temos uma exigência de negócios onde um gerente de engenharia ambiental deve garantir que 30 fabricação de uns locais situados durante todo os Estados Unidos precisa garantir que aquelas plantas arquivo para suas várias autorizações estipulado pelo estado em tempo hábil. Uma abordagem que investiguei aproveita a "pausa até data" atividade disponível para nós via SharePoint Designer worfklow. O gerente de engenharia (ou sua assistente) entra em todas as licenças necessárias e datas de lembrete no início do ano. Em seguida, o sistema faz todo o trabalho pesado.

Meio ambiente:

MUSGO, 64 bit, ambiente de máquina virtual (caixa de desenvolvimento), 2 servidores (SQL no servidor #1, Tudo o resto no servidor #2).

Problemas:

A ação de pausa até data parece ser a solução perfeita e bem pode revelar-se para ser. No entanto, Ele não funciona fora da caixa (para nós).

  1. O trabalho de fluxo de trabalho não foi programado para executar, Já. Eu descobri isso pela leitura através de Christopher White (http://chrissyblanco.blogspot.com/2007/06/issues-with-delay-activity-in-moss.html) write-up excelente usando o stsadm desta forma:

    C:\>stsadm -o getproperty - propertyname "job-workflow" -URL http://localhost

    <Propriedade existe = "não" />

    C:\>

    Isso foi um resultado surpreendente, mas facilmente resolvido:

    C:\>stsadm -o setproperty - propertyname "emprego-worfklow" -PropertyValue "cada 1 minutos entre 0 e 59" -URL http://localhost

    Operação concluída com êxito.

    C:\>

    Após fazer isso, o primeiro "em andamento" fluxo de trabalho rápido despediu-se e fê-lo tem de emprego.

  2. Infelizmente, da próxima vez não funciona como esperado. Graças a Deus, Christopher refere-se a nós here (http://support.microsoft.com/kb/932816). De redação desta entrada, Estamos esperando o departamento de ti para obter esse hotfix, Mas realmente parece promissor. Nossos exemplares do arquivo. dll afetados não compartilham o mesmo tamanho de bytes, Espero que isto resolverá o problema.

Solução alternativa:

Re-executar o comando stsadm -o setproperty a parecia prod o temporizador de fluxo de trabalho acordado. Seria, mais ou menos 7 minutos mais tarde, na verdade, acordar e continuar junto com o fluxo de trabalho.

Perguntas / Questões abordadas:

Pausa até data não funciona..

Pausa até data não continuar.

Status do fluxo de trabalho não muda de "em andamento"

Status do fluxo de trabalho permanece "em andamento"

Estudo de caso de MRO de fluxo de trabalho usando MOSS, SPD, InfoPath & serviços Web.

Visão geral

Esta entrada descreve um estudo de caso descrevendo um MRO real (Manutenção, Reparação e operações) processo de aprovação de fluxo de trabalho implementado no musgo.

Isto não é uma discussão técnica abertamente, Mas em vez disso precisa serve para fornecer um exemplo do mundo real que demonstra como a plataforma MOSS conheceu um mundo real.

(Esta entrada é Cruz publicado entre http://paulgalvin.spaces.live.com and http://blogs.conchango.com)

Plano de fundo

Processo MRO do cliente tinha sido caracterizado pela seguinte

  • Processo de aprovação manual.
  • Algum suporte usando planilhas do excel.
  • Processo de aprovação irregular. O mesmo processo de aprovação de compra MRO que variam a cada dia, por pessoa.
  • Lotes de papel e assinaturas manuscritas — compra requisições necessárias até 3 assinaturas escritas antes da aprovação final.

Os objectivos deste projecto incluído:

  • Automatizar totalmente o processo de.
  • Cumprimento das normas da empresa para aprovação.
  • Fornecer uma visão consolidada de compra de MRO para vários gestores.
  • Trilha de auditoria detalhada.

Como um efeito colateral da solução, escrito assinaturas não eram mais necessárias.

Processo de aprovação

O processo de aprovação é composto de quatro "pistas de natação": Originador, Gerente direto, Gerente funcional e o gerente de divisão.

Originador:

Vê a necessidade para a compra e inicia o processo. Note que o remetente pode ou não pode entrar na verdade a requisição de compra, Mas em vez disso direto a outro membro do pessoal para fazê-lo. Algumas vezes, o originador não tem a experiência técnica para preencher a requisição de PO. Por exemplo, um usuário pode querer um novo computador portátil da requisição, Mas não sabe o melhor fornecedor, Padrões, etc. Neste caso, as obras de originador com ele e ele realmente preenche a requisição.

Gerente direto:

Este é o gerente direto da entidade de origem (que pode ser diferente da pessoa que entrou na verdade a requisição de PO em MOSS). Gestores diretos devem aprovar a requisição de PO antes do sistema busca aprovação ainda mais para baixo da linha.

Gerente funcional:

O gerente funcional é o indivíduo responsável por garantir que a proposta de compra de acordo com normas da empresa no âmbito de uma determinada função corporativa. Por exemplo, IT de compras são aprovadas por um gerente funcional.

Gerente de divisão:

Gerentes de divisão aprovam requisições de compra estritamente pela quantidade de dólar. Gerente de divisão aprovar requisições de compra em excesso de uma quantidade de dólar configurável.

A solução

Usamos as seguintes ferramentas e componentes para implementar a solução:

MUSGO: Serve como a plataforma que todo o resto "trava". MOSS fornece serviços de alicerce para a segurança, dados mestre, trilhas de auditoria e outras características.

Serviços de formulários do InfoPath: Um componente de musgo, Isto permite que os usuários preencher requisições de compras através de um navegador da web.

SharePoint Designer (SPD): Usamos o SPD para implementar o processo de fluxo de trabalho automatizado.

Serviço Web: Um serviço de web c# aprimora a experiência do usuário, permitindo que listas de seleções em cascata no formulário do InfoPath e fornece melhor desempenho em relação a filtragem de dados. Consulte here para um mergulho técnico profundo sobre este assunto e nossas razões para usá-lo.

Listas personalizadas: MUSGO de perfis de usuário fornecido gerente direto de um determinado usuário., Mas não forneceu a maioria dos dados que controlava as decisões de fluxo de trabalho (EG. Se o gerente divisional é exigido para aprovar a requisição de PO). Nós usamos listas personalizadas em um "dados da empresa" site para manter dados como "Divisional Manager quantidade de dólar de aprovação", "Gerente de área funcional" e assim por diante. Listas muito bem integrada com o InfoPath e também criar/atualizar/excluir (CRUD) funcionalidade com segurança fora da caixa e auditoria.

Caso de uso

Este caso de uso ilustra como a solução se encaixa:

  1. Paul quer um novo laptop. Ele descreve suas necessidades de Vivek, uma pessoa de ti familiarizado com padrões de laptop corporativo, fornecedores preferenciais, etc.
  2. Vivek logs em MOSS, acessa o formulário de requisição de PO e entra a requisição em nome de Paul. O formulário solicita uma categoria de compra que usa os serviços da web para preencher uma lista suspensa de fornecedores aprovados empresa Vivek. Vivek também especifica a área funcional corporativa desta compra (EG. "ISSO" ou "Finanças").
  3. SPD com base em fluxo de trabalho inicia, determina o gerente direto de Paul e encaminha a requisição para seu empresário, Stacy.
  4. Stacy aprova a requisição de compra.
  5. Fluxo de trabalho do SPD inspeciona a requisição e determina o que é uma compra IT. Ele direciona o fluxo de trabalho para o gerente funcional, Wonson.
  6. Wonson aprova a requisição.
  7. Fluxo de trabalho do SPD novamente inspeciona a requisição e determina que o valor da compra excede uma quantidade de dólar maxium e encaminha para o gerente de divisão para aprovação.
  8. O gerente de divisão aprova a requisição de compra.

Notas

  • O caso de uso demonstra um "limpa" executar sem rejeições ou saltos.
  • Cada aprovador tem a capacidade de aprovar ou rejeitar a requisição, bem como fornecer comentários escritos. Estes são registrados na trilha de auditoria.
  • Se um Gerente responsável rejeita a requisição de compra em qualquer ponto, a requisição de PO é "morta" e o processo deve ser iniciado desde o início.
  • Fluxo de trabalho notifica o remetente em todas as etapas do processo de.
  • Não há assinaturas escritas — o cliente de determinada (Depois de algumas recomendações incisivas) que a auditoria trail conforme fornecido através do histórico do fluxo de trabalho, serviu a suas necessidades de auditoria.
  • Esforço — Demorou homem aproximadamente três semanas para implementar esta solução.

Conclusão

Essa solução aproveita MOSS como uma plataforma de desenvolvimento e tempo de execução. O cliente foi capaz de aproveitar os recursos de musgo de núcleo para automatizar um processo de negócios rotina que afetou quase todos os funcionários da empresa. Com excepção de um serviço web simples (que se aproveita de musgo), quase nenhuma programação a real"" foi necessário.

A solução também serve como uma vitrine"" para o cliente, demonstrando como diferentes recursos do MOSS pode ser combinado para criar um aplicativo de negócios totalmente caracterizado e gerar novas oportunidades de consultoria no futuro.

Glossário

MRO: Manutenção, reparação e operações. Essas compras normalmente incluem itens como blocos de notas, cadeiras, computadores pessoais, impressoras, telefones celulares e afins.

Resultados de pesquisa do WSS/MOSS (e dataviews): Ver os dados brutos XML

Isto pode ser óbvio para muitos, Mas o tempo estudando para minha prova de programação de musgo, Eu aprendi que é muito fácil obter o XML real de uma consulta de pesquisa através da interface de usuário.

Um método rápido é como segue:

  • Acesso a pesquisa avançada.
  • Realize uma busca que retorna alguns dados.
  • Editar a página (através de configurações do site).
  • Alterar o XSL para o seguinte:

<?XML Versão="1.0" codificação="UTF-8"?>
<
XSL:StyleSheet Versão="1.0" xmlns:XSL="http://www.w3.org/TR/1998/REC-xml-19980210 1999/XSL/Transform">
<
XSL:saída Método="XML" Versão="1.0" codificação="UTF-8" travessão="Sim"/>
<
XSL:modelo correspondência="/">
<
Pre>
<
XSL:cópia de Selecione="*"/>
</
Pre>
</
XSL:modelo>
</
XSL:StyleSheet>

  • Aplicar o golpe.
  • Exibir código-fonte no navegador.

Note-se que o <Pre> marca não faz muito, exceto que servem como um marcador conveniente quando você exibir os resultados.

Este truque pode ser muito útil quando trabalhar com propriedades gerenciadas e personalização de busca. Fornecerá uma lista definitiva do XML disponível para você usar no seu xslt que teria sido muito útil a última 25 vezes eu criei alguns resultados de pesquisa personalizados.

Isso deve funcionar para dataviews também, Embora eu não testei isso ainda.

Não CQWP para WSS? Tente isso…

Eu vejo isso Eric Kraus foi confrontado com uma exigência normalmente reuniu-se com uma web part de consulta de conteúdo. O problema? Ele estava em um ambiente WSS puro sem acesso para o CQWP. Ao invés de ondulando acima em posição fetal (um desejo que eu tenho que lutar todos os dias, Parece), Ele veio com a solução que pelo menos dá uma chance de lutar para ter sucesso-lojas WSS. É descrito here.

Vista detalhada e brilhante de gerenciamento de conteúdo API

Stefan Goßner montou uma série de 4 partes fantástica sobre o conteúdo do SharePoint e a API de implantação here. Dispõe de uma grande visão e bons exemplos em código (C#).

Peguei este link do blog de joris poelmans em http://jopx.blogspot.com/.

Mesmo se você é como eu, em que você não teve que fazer muito trabalho hands-on para gerenciamento de conteúdo, Isso vale bem a pena 20 minutos de seu tempo para ler.

Usando a API, Ninguém pode:

  • Exportar e importar conteúdo facilmente.
  • Re-parent-conteúdo. Se você quer exportar algum conteúdo de um site "A" e enviá-lo para o site "B" Mas em um novo lugar na hierarquia, Isso é possível.
  • Exportar o conteúdo de um site A e importar bits selecionados para o local A.
  • Re-ligação de conteúdo (ou seja, lidar com todos os hiperlinks).

WSS, libs doc & listas, Colunas calculadas que envolvem [Me]

Alguém na Internet estava perguntando sobre como criar uma coluna calculada em uma lista que mostraria um valor formatado como"[Usuário] – [Estatuto] – [Localização]" como em "Paul Galvin – Bebendo [grátis] Cerveja – A praia".

Paul iria entrar e atualizar sua entrada na lista e a coluna calculada atualizaria apropriadamente. O [Usuário] deve padrão para o usuário inserir/atualizar a lista.

Não é possível usar uma coluna calculada "voláteis" funções, tais como [Me] ou [Hoje]. Eu resolvi isso em um ambiente de teste com estes passos:

  1. Criar uma coluna de texto chamada "Usuário atual".
  2. Defina o valor padrão para [Me]
  3. Criar uma coluna calculada, chamada "Teste de Calc".
  4. Defina seu valor = [Usuário atual]

Eu fui, adicionado um item para a lista e funcionou.

Intermitente IE trava ao acessar documentos em uma biblioteca de documentos WSS/MOSS

Eu tenho sido atormentado por isto para 9 meses e vejo que as pessoas nos fóruns do MSDN e Usenet têm-lo too.l

Às vezes, ao acessar um documento do word (ou outros tipos de doc) de um documento biblioteca faz com que o Internet Explorer simplesmente bater e ir embora (tomando todas as abas com se abra qualquer são).

Esse hotfix da MS pode resolvê-lo: http://support.microsoft.com/kb/938888

Também, Há alguma descrição sobre o problema aqui:

http://jopx.blogspot.com/2007/07/solving-internet-explorer-crash-when.html

O verdadeiro passo XPath irá encaminhar?

Visão geral:

Criou uma lista personalizada que gerencia um tipo de conteúdo com algumas dezenas de colunas.

É adicionado a uma página e em seguida através do SPD, convertido em uma exibição de dados.

Problema:

Minha expressão de Xpath estava retornando em branco para uma coluna chamada "Posição atual". É desta forma que eu provi:

    <borda de tabela = "1">
      <XSL:para cada select = "/ dsQueryResponse/linhas/linha" >
        <TR>
          <TD>
            Status atual:
            <XSL:valor-do select="@Current_x0020_Status"></XSL:valor da>
          </TD>
        </TR>
      </XSL>
    </tabela>

A coluna no CT é denominada "Estado actual". Ele aparece na pesquisa como "Estado actual". Em todos os lugares que você olhar, Você vê o "Estado actual".

Ao debater-se loucamente cerca, procurando uma solução, Em vez disso me referi "@Recruiter" e eis que! — Isso realmente retornadas de volta o status atual. Eu esperava que retornar para trás o recrutador quando eu fiz isso.

Solução:

Eu piquei em SPD. Ir para a página em SPD e mostra o modo de exibição de dados. Você pode inspecionar o real dados fornecidos para o modo de exibição e associados Xpath. Aqui eu descobri que na verdade, o Xpath apontada para "Recrutador". Estranhamente, o "real" campo de recrutador apontado de "Recruiter1".

Levar:

SPD fornece autoritário expressões Xpath para linhas & colunas em uma exibição de dados.

Segundo, Ele mostra os dados reais. Assim, por exemplo, uma coluna do tipo mostra isso:

<sem-serifbrdiv><extensão><Um HREF="/sites/Corporate/HumanResources/TalentAcquisition/_layouts/userdisp.aspx?ID = 17 ">Galvin, Paulo</A><img borda ="0" altura = "1" largura = "3" src="/_layouts/images/Blank.gif"/><a href ='javascript:’ OnClick ='IMNImageOnClick();retornar false;’ classe = 'ms-imnlink'><img nome ='imnmark’ título =” fronteira =’0′ altura = 12’ largura = 12’ src='/_layouts/images/Blank.gif’ ALT =' nenhuma informação de presença’ SIP ='PGalvin@xxx.com’ ID ='imn_77, tipo = smtp'/></uma></extensão></sem-serifbrdiv>