arquivos Mensais: Fevereiro 2011

Alteração de grupos de colunas de Site no SharePoint Designer 2010

Eu criei uma série de colunas de site usando o SharePoint Designer 2010 Esta manhã e percebi que eu tinha dado a eles todo o grupo errado.  Foi embaraçosamente difícil de descobrir.  Eu não sabia onde clicar...

image

Eu mantive querendo dê um duplo clique na linha própria ou clique no botão configurações de coluna na faixa de opções.

Como acontece, a resposta correta (ou pelo menos uma resposta correta) é simples clique sobre o próprio grupo.  Espere um momento e então ele permitirá que você insira um valor, como mostrado:

image

Muito fácil, uma vez que você sabe o que fazer, Mas ele iludiu-me um pouco.

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

Editar manualmente o arquivo. SPD XOML para limpar as variáveis

Neste post aqui ("Obter respostas volta da atividade de processo de aprovação de início"), Eu mencionei que você pode adicionar acidentalmente um montão de variáveis de fluxo de trabalho para seu fluxo de trabalho do SharePoint Designer.  As coisas podem rapidamente tornar-se confuso e difícil de ler.  Especificamente, Se você adicionar a ação de "Iniciar atividade de processo de aprovação" para seu fluxo de trabalho, excluí-lo e adicioná-lo novamente, você acaba com todas as variáveis de fluxo de trabalho da atividade duas vezes. 

É uma dor real para atravessar e excluir todos os manualmente, assim que eu ainda gostaria de tentar removê-los diretamente do arquivo XOML.  Isto provou para ser bastante fácil de fazer. 

Primeira, você precisa localizar o arquivo real XOML.  Eu escrevi sobre esse tópico aqui: http://www.mstechblogs.com/paul/how-to-find-and-edit-spd-2010-workflow-xoml-files.  Uma vez encontrada, Abra o arquivo XOML e localize uma variável que você deseja remover.  Neste caso, Eu adicionei a atividade de "Iniciar o processo de aprovação" para meu trabalho duas vezes.  Pretendo remover uma variável fluxo de trabalho chamada "isItemApproved", uma vez que já não é usado e não há uma variável duplicada chamada "isItemApproved1". 

Basta fazer uma pesquisa de texto para a variável.  Minha tela esta aparência:

image 

Se você Pesquisar em torno no arquivo XOML, Você verá que "IsItemApproved1" é usado em muitos lugares diferentes, enquanto o original "IsItemApproved" é simplesmente definido uma vez e nunca usado.

Excluí-lo e, em seguida, salve o arquivo.

A única parte complicada é que eu tinha realmente fechar completamente SPD e reabrir antes de SPD reconheceu que o campo excluído.

É claro, a exclusão de campos não é a única coisa que você pode fazer com o XOML e eu pode blog sobre outros tópicos como este no futuro.

Você quer ser muito cuidadoso sobre o que fazer aqui e fazer backups de seu trabalho.  Você pode fazer um aparentemente menor / sutil mudança aqui que trashes preocupa-se o fluxo de trabalho, na medida do SPD e você poderia perder horas de esforço enquanto você reconstruí-lo.

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

Como localizar e editar SPD 2010 Arquivos XOML de fluxo de trabalho

Eu estava pesquisando uma maneira fácil de remover um monte de variáveis de fluxo de trabalho sem ter que gastar minha tarde em uma sessão de tortura de clique SPD completa explodida.  Meu pensamento foi editar diretamente o XOML, o que é fluxos de trabalho declarativos o XML arquivo subjacente SPD.  Isto é como eu o encontrei.

Primeira, Vá até a opção todos os arquivos em objetos de Site na navegação.  Você precisa de permissões apropriadas para ver isto, Portanto, se está faltando para você, apelar para a pessoa certa admin a conceder-lhe o priv.  Isso é o que parece:

image

 

Todos os ficheiros mostra uma lista de … todos os arquivos:

image

Selecione a pasta de fluxos de trabalho e você vê uma lista de pastas para cada fluxo de trabalho:

image

Clique em para a pasta correta e  você ver uma listagem de todas as coisas interessantes que fazem parte de um fluxo de trabalho declarativo do SPD.  Clique com o botão direito sobre o arquivo. xoml e selecione "abrir com-> SharePoint Designer (Abertos como XML)"para editar diretamente o XOML:

image

Você pode querer fazer um backup manual antes de mexer com as coisas.  Um copiar/colar regular do arquivo diretamente no SPD é provavelmente bom o suficiente, ou você pode copiar colar todo o texto XML e salve-o em sua área de trabalho ou qualquer que seja seu acostumado nestes casos.

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

Obter respostas volta da atividade de processo de aprovação de início

Eu fui brincar com fantasia nova actividade de "Iniciar o processo de aprovação" do fluxo de trabalho SharePoint Designer e rapidamente foi frustrado porque eu não poderia imediatamente responder a questão, "foi ele aprovado ou não?”. 

A resposta curta é que é bastante fácil de obter a resposta.  Quando você adiciona essa atividade a seu fluxo de trabalho principal, SPD adiciona um bazillion variáveis para as variáveis de fluxo de trabalho e fonte de dados de parâmetros, como você pode ver aqui:

SNAGHTML2350fe72

Você também notará que se você adicionar mais de um desses, SPD acrescenta um "1" e assim por diante para todas as variáveis. 

Achei que quando eu apaguei a primeira atividade de "Iniciar o processo de aprovação", o primeiro conjunto de fluxo de trabalho associado variáveis manteve-se (Infelizmente).  Assim, tenha cuidado como você usa isso porque caso contrário, você vai acabar com  uma lista muito desordenada das variáveis de fluxo de trabalho.

Eu dou crédito Microsoft por seguir a Convenção de nomenclatura "é" para uma variável Boolean.  Esta Convenção deixa muito claro que tipo de dados é suposto para estar lá.

Pesquisar, Eu encontrei este artigo útil: http://office.microsoft.com/en-us/sharepoint-designer-help/workflow-actions-in-sharepoint-designer-2010-a-quick-reference-guide-HA010376961.aspx.  Ele realmente não abordar esta questão específica, mas tem algumas boas informações sobre o tema, assim que eu iria lá se você quiser saber mais sobre esta actividade específica e seus irmãos.

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

SharePoint Designer 2010 Função MOD

Estou trabalhando fora alguns registro onde os funcionários podem solicitar férias, período de licença médica, etc. Uma regra de validação requer que você deve sempre solicitar tempo fora em 4 intervalos de horas.  Isso é bastante fácil – usar um módulo função.  Módulo função informa o resto na divisão.  Se não houver nenhum restante, modulo é zero, caso contrário, é tudo o que resta.  Por exemplo, 8 Mod 4 = 0 (8 / 4 = 2 com nenhuma fração).  Por outro lado, 8 Mod 5 é 3.

Eu precisava fazer isso vez com o SPD 2007 era uma vez e acabei realmente usando um formulário do InfoPath para resolver, assim foi tratado no front-end no momento.  No caso atual, pode haver um formulário do InfoPath no retrato, mas que ainda não está claro.  Assim, Eu estava trabalhando para fora de uma técnica para garantir que o tempo solicitações estão sempre em 4 incrementos de uma hora.  Eu ia fazer a matemática, Salve-o em uma cadeia de caracteres e, em seguida, fazem alguns substring coisas. 

Eu levantar SPD 2010 e para minha surpresa (e pouca vergonha) há um módulo de função já:

image

Estou mais uma vez agradavelmente surpreso que algo que eu precisava já está lá fora da caixa.  Parece como uma função de estranha para a Microsoft para incluir na mistura.  Ele tem uma espécie de "isso é fácil, Então, vamos jogá-lo no"sentir isso.  Eu simpatizo com o que, como eu fazer isso sozinho o tempo todo.  Este projeto do CodePlex tem um monte de funções pouco resultantes do princípio de ItsEasy.  Ao mesmo tempo, A Microsoft continua a oferecer suporte a evidência do efeito de "95% do caminho" com o produto.  Eles implementam a função Mod, mas não a função round, por exemplo.

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

Projeto do CodePlex – SP2010 Explorer

Como parte de um esforço contínuo para saber os detalhes técnicos de nível baixos do SharePoint 2010, Eu criei um "SharePoint Explorer"tipo de ferramenta.  A idéia não é nova.  Eu usei este projeto mais de uma vez: http://sharepointexplorer.codeplex.com/.  Minha idéia é criar uma versão do SharePoint que usa conectado web parts para Mostrar todos os detalhes de baixo nível que pode fornecer o modelo de objeto. 

Este blog serve como tanto o anúncio do projeto, bem como uma chamada para voluntários.  Se você está interessado em trabalhar neste projecto, Avise-me via e-mail (Galvin.Paul@gmail.com) e nós elaboraremos.

Aqui está o projeto: http://sp2010explorer.codeplex.com/

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

SharePoint Designer 2007 Projeto do CodePlex de extensões de fluxo de trabalho

Estou reunindo meu segundo projeto do CodePlex (Detalhes serão anunciados na quarta-feira desta semana, mais ou menos) e eu tinha uma olhada no meu primeiro projeto, "Extensões de fluxo de trabalho do SharePoint Designer". Fiquei chocado e envergonhado de ver que ele foi baixado mais de 4,800 vezes:

image

Esqueci-me basicamente sobre este projeto no último 12 meses. Estou envergonhada porque essencialmente ter abandonado ele.

Eu vou ter outro olhar e me lembrar de que é tudo sobre.

Se alguém estiver interessado em trabalhar nesta, Avise-me e vamos ver sobre colaborar nele. 4,800 downloads não é uma quantidade gigante, mas é mais do que nunca, percebi e provavelmente vale a pena algum esforço para pegá-la e levá-lo para a frente.

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

Exportação-SPWeb Me diz "InvalidData” Mas os dados são válido

Eu estou no processo de escrever um artigo para o povo do bom www.sharepointbriefing.com e que envolve a implantação de uma lista de um farm de desenvolvimento para um farm de produção.  Estou ainda acostumado a usar stsadm e precisa quebrar esse hábito, então eu despediu-se do SharePoint 2010 Shell de gerenciamento do e jogado ao redor com exportação-SPWeb t: Microsoft.SharePoint.SPWeb para fazer backup de minha lista.  Que coisa estranha difícil que provou ser!

Eu continuei recebendo este erro:

image

Esse erro, "InvalidData: (Microsoft.share…CmdletExportweb"") estava me matando.  Eu estou envergonhado em quanto tempo eu lutava com este.

Eu tinha anteriormente correr em uma parede com PowerShell e usado stsadm para começ em torno dele.  Eu experimentava aquilo desta vez e eu tenho bons resultados.

Eu passei muito tempo a brincar com a opção de –Identity e então finalmente com –ItemURL.  Verifica-se que a opção ItemURL requer um caminho completo da biblioteca de lista/você  deseja exportar sem o http://bit de servidor.  Assim, Apesar do fato de que o argumento de identidade está apontando para um subsite, o ItemURL não é relativo a identificar mas relativo ao conjunto de sites.

Teria sido agradável para o cmdlet para me dizer o que era minimamente válido (a identidade neste caso) e o que era inválido (ItemUrl).  Esses pequenos toques ajudam as pessoas a abraçar o produto.  Não um grande ding contra SharePoint, mas um pouco, pelo menos?

Esperemos que este post vai economizar alguém um pouco de dor no futuro.

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin

Trabalhando com TreeNodeBinding em ASP.Controle Treeview NET

Tenho vindo a trabalhar sobre o que espero que seja um logo liberado CodePlex projeto que fornece um agradável bit integrado de web parts, falando uns aos outros por meio de conexões de consumidor do provedor de explorar um site do SharePoint nos bastidores.  (Isso certamente foi feito antes, mas este é um projeto de aprendizagem, tanto quanto qualquer outro coisa).  Isto pretende ser um substituto para a vista do Explorador de windows do SharePoint 2010 bibliotecas de documentos.

O código tem recursiva habitual chamar para baixo o SPWeb e SPLists partir um determinado ponto.  O objeto que faz todos os que atravessem constrói uma Cadeia de caracteres XML que é algo como isto:

<SiteCollection url =’http://demo2010a:9090′>
 
<Web
     título = 'Olá mundo Sandbox' 
     Modelo =' um site para as equipes organizar rapidamente, autor, e compartilhar informações, BLÁ BLÁ BLÁ '>

     <lista
        título ='BCC_Health_Services_FAQs’
        Modelo ='CustomList’
       
ListId =’http://demo2010a:9090/helloworldsandbox[delim]1e02b001-3cb2-4f17-b63d-7809e86b4174′>
    
</lista>

     <lista
        título = 'BCC_Notifications' 
        Modelo = 'CustomList' 
        ListId =’
http://demo2010a:9090/helloworldsandbox[delim]5a5a13d1-877 c-41 c 0-9063-b9612be80d5e’>
     </lista>

  </Web>

</sitecollection>

Eu espero para limpar acima que XML antes de tudo é dito e feito.

Eu quero começar, finalmente, que as informações acima e em um Controlarar de Treeview.  Não é exatamente a terra coisas estilhaçando.

O desafio que eu tirei aqui foi ligar o modo de exibição de árvore para um controle de fonte de dados XML em vez de construir manualmente até meu treenodes como eu percorrer a árvore.  Eu fiz isso porque eu estou deliberadamente fazendo coisas mais difícil para mim (Este é um projeto de aprendizagem depois de tudo) e em parte porque eu tenho esta vaga noção de que a criação de nós da árvore como eu percorrer a árvore não é uma boa idéia para o longo prazo.

O problema dessa abordagem é que o Controlarar de Treeview não sabe sobre os atributos de boas em nós interessantes como "lista" ou "web" para que ele mostre essa saída por padrão:

 

image

Isso não é útil.  Isto é onde a classe TreeNodeBinding ajuda.  Posso usar isso para dizer o controle Treeview como ele deve interpretar o XML.  Aqui está um exemplo:

TNB = novo TreeNodeBinding();
TNB.DataMember = "lista"; // Este é o rótulo no xml para um site.
TNB.TargetField = "listid";
TNB.ValueField = "title";
TNB.ToolTipField = "Modelo";

Essa ligação informa o treeview que quando encontra uma <lista> nó de XML, aplicam-se as ligações para TargetField, ValueField e ToolTipField.  Em Maio app, Estes mapeiam as seguintes:

  • TargetField: Quando alguém clica em um valor de nó, Isso é o que você vai ter para SelectedNode.Value.  Isso não deve ser confundido with…
  • ValueField: Isto é o que você quer de Treeview para exibir para o usuário.
  • ToolTipField: O valor de XML que você deseja como uma dica de ferramenta.

Adicionar que TreeNodebinding DataBindings da exibição em árvore e você obter saída como este:

 

image

Eu vou ter mais sobre tudo isso como eu continuar no projeto e eventualmente colocar isso no Codeplex.

</fim>

Subscreva ao meu blog.

Siga-me no Twitter em http://www.twitter.com/pagalvin