Rápido e simples: Fazer apenas uma leitura de formulário do InfoPath (O InfoPath Forms Services no MOSS)

Há um cenário de negócio comuns como este:

  • Usuário preenche um formulário do InfoPath.
  • Enviar formulário.
  • Processo de fluxo de trabalho de execução demorada arranca.
  • Enquanto o fluxo de trabalho está em execução, Nós não queremos alguém para alterar o conteúdo do formulário.

Este exemplo office.microsoft.com Descreve como criar uma exibição separada"" e marcar a visão inteira como somente leitura. Esta é uma abordagem viável, mas tem a desvantagem que você efetivamente criou duas versões inteiras da mesma forma e deve agora mantê-los em sincronia manualmente. Se você adicionar um campo para a exibição editável, Você deve adicioná-lo para o modo de exibição não-editável também. Ao longo do tempo, com diferentes desenvolvedores, pode haver alguma divergência.

Esta alternativa pode funcionar melhor em alguns casos:

  • Adicionar um novo campo de formulário chamado "IsEditable".
  • Defina o valor padrão true.
  • Promovê-lo ao publicar em MOSS.
  • No fluxo de trabalho, Defina o valor de IsEditble para false.
  • Voltar ao formulário.
  • Adicionar uma regra que "após a abertura do formulário", desativar o salvamento botão quando IsEditable é false.

A desvantagem dessa abordagem é que todos os campos poderão ser editáveis na tela. O usuário pode obter uma falsa impressão de que eles podem realmente mudar o conteúdo. Você pode atenuar isso, colocando em algum texto que o formulário está desabilitado, possivelmente em grandes letras vermelhas no topo da página.

Em um projeto, Eu criei um status de fluxo de trabalho"" Exibir. Como o fluxo de trabalho progrediu, Ele iria atualizar campos de status específico que tinham sido promovidos de forma a. Quando o usuário abrir o formulário, o "formulário aberto" regra comutado automaticamente para que o Vista e o usuário tinham um status de resumo pouco agradável.

</fim>

Subscreva ao meu blog.

Semáforos de uso no fluxo de trabalho do SharePoint Designer para evitar Loops intermináveis

É possível causar um loop infinito em um fluxo de trabalho do SharePoint Designer. Um padrão comum de implementação como este faz com que o problema:

  • Criar um fluxo de trabalho e associar uma lista de.
  • Indicar que ele deve iniciar em criar novos itens e atualização de itens existentes.
  • Uma etapa no fluxo de trabalho atualiza um campo "Current Item".
  • Uma vez que o atual item alterado, o fluxo de trabalho for iniciado novamente.

Para evitar esse loop infinito, implementar um semáforo simple:

  • Adicionar uma coluna de site (ou coluna à lista/biblioteca se você não estiver usando tipos de conteúdo).
  • Ocultá-lo na página Editar (fácil de fazer se uma coluna de site por meio de suas propriedades, não é tão fácil se uma coluna de lista).
  • No fluxo de trabalho, Verifique se o valor da coluna de semáforo está em branco.
  • Se estiver em branco, Defina-o como um valor diferente de em branco e continuar.
  • Se não é está em branco, sair imediatamente.

Isto pode tornar-se uma solução bastante diferenciada, Dependendo de requisitos de negócios e assim por diante, mas tem sido um padrão viável quando você precisava.

</fim>

Subscreva ao meu blog.

Desenvolvedores: Como aprender o SharePoint?

ATUALIZAÇÃO: 04/25/08: Estava pegando alguns posts do blog e encontrei um link para este artigo: http://www.networkworld.com/news/2008/032608-microsoft-sharepoint.html?page=1. Eu faço nota disso porque além de pedir, "como aprender sharepoint?", algumas pessoas perguntam "por que deveria eu aprender sharepoint?". Esse artigo parcialmente responde mais tarde.

Nos últimos meses vários, uma dúzia ou mais de gente de todo o planeta foram enviando-me e a fazer a pergunta geral, "Como aprender SharePoint?"

Eu estou quase não autoritativo, Mas eu tive algum sucesso (e tentando melhor o tempo todo) Então eu pensei que eu seria documentar meu mapa pessoal. Outros podem achar que é valioso.

Antes de fazer isso, Só quero observar que é óbvio para mim, com base nestes e-mails pessoais e do número ainda maior de MSDN / Universidade de SharePoint posts da mesma natureza, que há interesse dos desenvolvedores enorme para chegar até a velocidade com WSS/MOSS. Gostaria de saber o que vai ser um ano a partir de agora … mais fácil encontrar bons talentos do SharePoint? O mesmo? São pessoas comprometendo-se para a plataforma a um ritmo suficiente para acompanhar a demanda por bons recursos? Como poderia você mesmo descobrir algo assim falta um WAG?

Roteiro de Paul

Eu era empregado pelo povo bom em Conchango, enquanto segui este roteiro em tempo integral. Isso significa que, numa perspectiva de aprendizagem, Estava ativamente envolvida em projetos como eu segui os passos que esboço abaixo.

Alguns termos básicos

Para as pessoas que entram neste mundo, Existem duas principais siglas:

  • WSS: Windows SharePoint Services
  • MUSGO: Microsoft Office SharePoint Server

WSS é "livre" em que é incluído com o windows server 2003 (ou pelo menos pode ser baixado do MS). Eu coloquei entre aspas por aí à solta, porque você precisa de uma caixa, uma licença válida do / s e, provavelmente, SQL (Apesar de haver a "grátis" tipo de SQL também).

MOSS é construído em cima do WSS e estende-lo. Não há nenhum musgo sem WSS. MOSS não é livre.

Talvez não um dia, Mas logo depois que você tem alguma familiaridade básica com a plataforma, é importante aprender as diferenças. Por exemplo, uma poderosa web part, a Web Part de consulta de conteúdo, é uma característica MOSS e WSS não disponível. As pessoas muitas vezes fazem a suposição incorreta que o CQWP está disponível no WSS e acabam lutando por uma medida paliativa, quando percebem seu erro.

Ler os livros

Comecei a trabalhar com WSS/MOSS em sobre 01/02/2007. Eu tinha um pouco de experiência prévio com SPS 2003 Mas muito pouco. Para me começou, Eu comprei o dois livros listados aqui (http://paulgalvin.spaces.live.com/lists/cns!1CC1EDB3DAA9B8AA!203/).

Eu comecei com o livro de administração azul grande. Naturalmente, que abrange a administração. Ao mesmo tempo, Ele fornece um levantamento de todos os recursos do MOSS (e recursos WSS também).

Para mim, Não é tão importante lembrar todos os detalhes de vários (até que é hora de obter a certificação) Mas é bom saber os limites. (Eu sigo essa mesma abordagem no primeiro tiro que eu jogo no xbox ou PC — Eu entrar em uma sala e tendem a fazer um laço anti-horário até voltar onde comecei. Sinto-me melhor sabendo que a forma da caixa em que estou.)

Depois de ler o livro azul grande, Li todo o livro dentro do WSS. Ele mergulha profundamente questões de cuidados que os desenvolvedores mais sobre.

Criar um ambiente Virtual

Para fazer qualquer desenvolvimento ou utilizar adequadamente o ambiente, Você precisa de um sistema de operacional completo soprado windows server com o SharePoint Designer, Visual Studio 2005 (2008 obras, Mas algumas ferramentas úteis ainda a ser portado a redação deste artigo), InfoPath 2007 e outras coisas. Existem muitas entradas de blog bom descrever esse processo. Tenho um olhar para estes dois:

Além disso, Andrew Connell compartilhou suas experiências com o VMWare aqui:

Use seu motor de busca favorito para ver o que outras pessoas fazem. É um exercício de aprendizagem úteis em e de si mesmo.

Gaste alguns minutos irritadamente, denunciando o fato de que você precisa de um ambiente de servidor no qual deseja fazer o desenvolvimento. Mas … Não se incomode de blogar sobre isso ou postá-lo nos fóruns do MSDN. It’s already been done 🙂. Em vez disso, abraçá-la e seguir em frente. Você vai ser melhor para ele.

Obter a certificação

Eu acredito que o caminho de certificação MS SharePoint, que consiste em quatro exames, é exaustiva. Sugiro que você siga o seu guia de preparação on-line e fazer o seu melhor para entender cada uma das áreas do teste.

EU Não Sugiro que façam o exame só para passá-lo. EU Não Sugiro que você use um do despejo do cérebro"" 3ª festa "ferramentas de estilo" para passar os testes de MS. Se você pode fazer o teste, passe que ele com base em uma combinação de seu próprio dirigido estudo e experiência hands-on, Você vai ser um candidato mais forte de desenvolvedor e trabalho para isso.

Existem quatro testes em duas "pistas":

Desenvolvedor:

Admin:

Eu recomendo que os desenvolvedores estudem para todos estes exames. Você vai ser forte para eles, no entanto, suponho que se você pulou as exames de admin, você obteria.

Encontrei a versão WSS seja consideravelmente mais desafiador do que as versões correspondentes do MOSS, para minha surpresa. Estive recentemente em uma classe e vários outros fizeram o mesmo ponto.

Enquanto eu estava estudando para o 70-542 exame (Desenvolvimento de musgo) Segui meus recursos de estudo. Estes podem ser úteis para você também: http://paulgalvin.spaces.live.com/Blog/cns!1CC1EDB3DAA9B8AA!192.entry

Conecte-se à Comunidade

A comunidade de SharePoint é vibrante, forte e crescendo maiores o tempo todo.

Você quer olhar para o seguinte para iniciar:

  • Blogues
  • Fóruns
  • CodePlex
  • Twitter

Blogues

Se você não entende de RSS, parar tudo e aprendê-la. Vai demorar 10 minutos para aprendê-la, Talvez outro 10 minutos para encontrar um web com base de leitor de RSS (Eu gosto leitor do google, www.Google.com/Reader).

Start by adding this blog to your RSS reader 🙂

Próximo, Adicionar www.sharepointblogs.com ao seu leitor. Eles agregam muitos blogs em um único feed.

Ao longo do tempo, Você vai encontrar blogs que não são agregados assim. Só adicioná-los individualmente.

Eu assino alguns dúzia de blogs que eu já se acumulam ao longo do último ano. Se você quiser, Posso exportar minha lista e enviar e-mail.

Eventualmente, Você pode querer começar o seu próprio blog. Pessoalmente, acho que uma série de entradas de blog descrevendo um "novato" progresso do WSS/MOSS seria uma série interessante de aprendizagem. Eu queria que ter feito isso mesmo.

Fóruns

Participo ativamente de dois grupos do fórum: MSDN e Universidade de SharePoint.

Fóruns são excelentes lugares para aprender. As pessoas fazem perguntas que vão desde o simples ("Como criar uma coluna de site") para o pânico ("Meu servidor é baixo!") para perguntas mais hipotéticas de design.

Uma vez que você obter um sabor do ambiente, Aventure-se e começar a responder. Curto de interagir diretamente com um cliente, Não há nada melhor do que isto para mãos na experiência.

CodePlex

Ir para www.codeplex.com.

Verifique-o para fora e pesquisa para projetos do SharePoint.

Subscrever o resumo diário que CodePlex feed no seu leitor de feeds.

Adicione quaisquer novos projetos do SharePoint para o seu leitor de feeds.

Eventualmente, Depois de ler os fóruns e enfrentar seus próprios demônios WSS/MOSS, Considere colocar juntos seu próprio projeto do codeplex.

Twitter

Enquanto escrevo esta entrada de blog, muita gente de SharePoint começaram a usar Twitter.

É difícil caracterizar o Twitter. Você só vai ter que ver você mesmo.

Conclusão

Isso quebra o meu roteiro e me faz atual. Eu só comecei a usar o Twitter há duas semanas.

WSS/MOSS é uma plataforma muito legal e a Comunidade está crescendo o tempo todo. Usar recursos comunitários para melhorar suas habilidades e aproveitar a viagem!

</fim>

Subscreva ao meu blog.

Gerenciador de proteção de dados: Parece ser uma ótima solução de Backup e restauração do SharePoint

Na Grupo de usuários do SharePoint de New Jersey reunião ontem à noite, Microsoft Sr. especialista de produto que Duwayne Harrison apresentado Microsoft Data Protection Manager 2007. DuWayne era grande (e ele foi apoiado por um ou dois colegas da platéia cujos nomes não me lembro). Você pode obter os materiais de apresentação aqui.

Até ontem à noite, Nunca ouvi falar de DPM.

Eu não sou uma pessoa do tipo sistema admin, Então eu estou escrevendo esta perspectiva do consultor SharePoint e podem errar algumas palavras. Para mim, O DPM é uma solução de backup e restauração para a Microsoft "coisas":

  • Arquivos
  • SQL
  • / S
  • Máquinas virtuais (Live backup da VM, mesmo se a VM em si está executando Unix).
  • Recuperação bare-metal (ou seja. falha de hardware catastrófica).

Além dessas coisas, que eu considero para ser os requisitos mínimos para qualquer tipo de "real" produto de backup/restauração, O DPM também tem inteligência incorporada para SharePoint. Ele entende sobre farms de servidores e permite restaurar:

  • Bancos de dados inteiras (EG. conteúdo, config, etc).
  • Conjuntos de sites
  • Sites individuais
  • Itens individuais (EG. documentos).

O processo de restauração real envolve extrair os dados de destino do backup e salvá-lo em uma fazenda de restauração"" e depois de lá, movendo-a para o ambiente de produção (ou onde quer que você deseja restaurar). Acho que é sem emenda, Mas havia muita ênfase na necessidade de uma "fazenda de restauração". A fazenda de restauração não precisa combinar com o ambiente de produção em cada detalhe (principalmente na topologia física) Mas precisa corresponder em termos de modelos, versões, etc.

Não vi uma demo completo de ponta a ponta, Mas DuWayne mostrou fotos da tela e algumas demonstrações ao vivo. Parece ser tão bom quanto ele precisa ser, pelo menos para um moderado tamanho ambiente.

Fiquei particularmente impressionado com a fixação do preço. Obviamente, Não me prender a isso, Mas eu acredito que o preço mais caro é mais ou menos como segue (em USD):

  • $600 para o DPM em si.
  • Hardware para um servidor DPM (e material associado para a mídia e tudo o que).
  • $450 para cada servidor que você deseja fazer backup ("a empresa" licença).

Um farm de cinco servidores custaria no máximo:

  • $600 para o DPM
  • $450 x 5 servidores = $2,250

Custo total de licenças: $2,850

Na prática, seria menos. Você não precisa necessariamente ter o DPM instalado em cada web front-end, por exemplo. Você não precisa necessariamente licenças empresariais ou.

A interface do usuário é parece muito simples, provavelmente não exigiria qualquer treinamento especial para chegar até a velocidade. Eu pedi especificamente sobre isso e aparentemente há um 1.5 classe dia disponível, Embora não seja óbvio para mim que alguém realmente precisa levá-lo.

Apesar de tudo, Acho que é certamente vale a pena investigar se você está procurando por uma solução de proteção de dados para o SharePoint.

</fim>

Subscreva ao meu blog.

Technorati Tags:

Twitter: http://twitter.com/pagalvin

Passo a passo: Bug de cancelar o registro de correção empregado formação modelo lugares disponíveis

Como muitas pessoas sabem, o modelo de formação de empregado fornecido pela Microsoft aqui tem um bug que pode reproduzir seguindo estes passos:

  • Criar uma classe com um tamanho máximo de 10 alunos.
  • Registre-se –> Total disponível assentos corretamente diminui por um. Resultado: 9 lugares disponíveis.
  • Cancelar o registro: –> Bug. Lugares disponíveis totais devem incrementar por um. Isso não acontece. Resultado: 9 número de lugares disponíveis, de acordo com o SharePoint, mas na verdade, há 10 lugares disponíveis.

Solução: Usar o SharePoint Designer para corrigir o fluxo de trabalho.

Primeira, Abra o site. A lista de pastas para mim se parece com isso:

imagem

Se tivermos um olhar sobre a "inscrição de participante" fluxo de trabalho, vemos que há um passo rotulado "Impor a política de assento". Parece que isso:

imagem

Nesta etapa do fluxo de trabalho atualiza o item por incrementar "preenchido assentos" coluna de metadados sobre o curso. Se pararmos isso mais detalhadamente, vemos isso:

imagem

É que todas as informações que precisamos corrigir o fluxo de trabalho de cancelamento de registro.

Se vamos virar para o fluxo de trabalho de cancelamento de registro, Não há nenhuma etapa de fluxo de trabalho semelhantes. Adicioná-lo como segue:

1: Expanda "de cancelamento de inscrição de participante" e abrir o XOML (Veja tela primeira se você está perdido).

2: Adicionar uma nova variável de fluxo de trabalho, "Novos lugares cheios" do tipo "Número".

3: Atribuir um valor para "novos lugares de cheia" como mostrado:

imagem

4: Diminuir os lugares preenchidos por 1:

imagem

5: Atualização do item relacionado do curso:

imagem

6: Certifique-se de que todos os passos estão na seqüência correta. Para mim, Ele se parece com isso:

imagem

7: Terminar o fluxo de trabalho para re-construi-lo.

8: Teste.

</fim>

Subscreva ao meu blog.

Technorati Tags: ,

Observação aleatória de sábado de manhã

Eu estive em classes nas últimas duas semanas e uma coisa que me impressiona é que há um monte de pensativo, pessoas inteligentes trabalhando no SharePoint (como consultores ou equipe de ti) Quem não o blog, Twitter, Parece ciente de placas de mensagem pública como fórum MSDN ou Universidade de SharePoint, manter os perfis de Facebook ou LinkedIn, etc. Eles são os consumidores de pura informação. Nada mau, interessante apenas.

</fim>

Technorati Tags:

Subscreva ao meu blog.

Web Part de consulta de conteúdo: Falando em Nova York grupo de usuários do SharePoint

Eu vou falar com meu colega, Natalya Voskresenskaya, na Grupo de usuários do SharePoint de Nova York reunião quarta-feira, 7 de maio.

Graças a Bob Fox para jogar os nossos nomes no chapéu e ajudando nos têm essa oportunidade!

Nosso tema geral é o Content Query Web Part e esperamos dar algumas informações úteis para dois públicos distintos:

  • Usuários de negócios (Não-desenvolvedores): Mostrar como CQWP pode ser configurado para resolver certos problemas comuns de negócios sem qualquer codificação.
  • Desenvolvedores: Mostrar como CQWP pode ser estendida para fazer algumas coisas muito interessantes que um usuário de negócios normalmente não sentiria confortável fazendo-se. Esta parte da apresentação irá ajudar os usuários de negócios entender o que é possível usar esta web part para que eles podem fornecer requisitos de melhores e mais realistas aos seus parceiros de desenvolvedor.

Aqui está o aviso que NYSPUG enviado para fora no início desta semana:

"Usando a Web Part de consulta de conteúdo para resolver problemas de negócios".

Web Part de consulta de conteúdo do MOSS 2007 (CQWP) permite aos usuários criar exibições personalizadas de dados consultados a partir de muitas fontes, e apresentar esses dados em um só lugar. Apesar de sua consulta poderosa & opções de refinamento de conteúdo, CQWP é muitas vezes um recurso subestimado e negligenciado. CQWP é tanto um "dados extração motor" (encontrar documentos ou itens de lista em qualquer lugar em um conjunto de sites) e também uma ferramenta de apresentação de primeira classe que permite aos usuários controlar como o conteúdo é apresentado por quebra automática de HTML e estilos para formatar a exibição de quase qualquer maneira que você desejar.

Nesta sessão de demonstração-pesado, Eles irão mostrar como usar o CQWP para resolver problemas de negócios mostrando fora recursos principais.

  • usar os recursos CWQP padrão, incluindo o público alvo

  • Use CWQP como uma ferramenta de relatórios em qualquer lugar em um conjunto de sites através de critérios de filtro, tais como "todos os documentos criados hoje".

  • mudar o olhar & sensação de resultados da consulta para realçar dados corporativos, Mostrar colunas adicionais de informação, exibir informações em um formato de grade, e outros.

  • mostrar como CQWP pode auxiliar na administração de tipo de conteúdo (ou seja. localizar todos os documentos de um determinado tipo de conteúdo a fim de compreender o impacto potencial de alterar uma definição de CT).

  • descrever algumas limitações de CQWP

  • fornecer uma lista de recursos para técnicas avançadas de CQWP, incluindo Blogues, Projeto Codeplex de ECQWP & Documentação do MSDN.

</fim>

Subscreva ao meu blog.

Technorati Tags:

Integração do SharePoint rápido: Executar uma consulta simples

Esta é uma continuação no meu jejum codificação mini-série para SharePoint folk. O trecho de código a seguir executa uma pesquisa para o termo "teste" rapidamente através de um aplicativo de Console. Obviamente, é um salto, pular e saltar para quebrar esta lógica dentro de uma web part ou página de aplicativo:

usando Sistema;
usando System.Collections.Generic;
usando System. Linq;
usando System. Text;
usando System.Collections.Specialized;
usando Com.FastSearch.Esp.Search;
usando Com.FastSearch.Esp.Search.Http;
usando Com.FastSearch.Esp.Search.Navigation;
usando Com.FastSearch.Esp.Search.Query;
usando Com.FastSearch.Esp.Search.Result;
usando Com.FastSearch.Esp.Search.View;
usando System. Collections;

espaço para nome Conchango
{
    Classe InvokeSimpleFASTQuery
    {
        estático privatevoid Principal(Cadeia de caracteres[] args)
        {

            #região Inicializar a nossa comunicação com FAST
            ISearchFactory searchFactory;

            NameValueCollection nameValueCollection = Novo NameValueCollection();

            NameValueCollection("fastsearchengine", "Com.FastSearch.Esp.Search.Http.HttpSearchFactory");
            NameValueCollection("Com.FastSearch.Esp.Search.Http.QRServers", "fastdemoback:15100");
            NameValueCollection("Com.FastSearch.Esp.Search.Http.RequestMethod", "GET");

            searchFactory = SearchFactory.NewInstance(nameValueCollection);

            #endregion #region Lançar uma consulta

            Cadeia de caracteres queryString = "teste";

            Consulta consulta = Novo Consulta(queryString);

            consulta. SetParameter(BaseParameter.CLUSTERING, falso);
            consulta. SetParameter(BaseParameter.NAVEGAÇÃO, verdadeiro);
            consulta. SetParameter(BaseParameter.NAVIGATION_DEEPHITS, 100);

            ISearchView searchView;
            searchView = searchFactory.GetSearchView("sharepointconn");

            IQueryResult resultado = searchView.Search(consulta);

            Console.WriteLine("Total de resultados de pesquisa: [" + resultado.DocCount + "].");

            int docCounter = 0;

            ao mesmo tempo (docCounter < resultado.DocCount)
            {

                docCounter    ;

                IDocumentSummary thisDocSummary = resultado.GetDocument(docCounter);

                Console.WriteLine("[" + docCounter + "]: " + thisDocSummary.GetSummaryField("url").StringValue);

            } // ao mesmo tempo

            Console.ReadLine();
            #endregion

        }
    }
}

Ele gera o seguinte resultado:

imagem

</fim>

Subscreva ao meu blog.

Technorati Tags: ,