Fluxo de trabalho do SPD “Coletar dados de um usuário”: Modificar o formulário de tarefas gerado

Eu estou trabalhando em um projeto que usa cinco diferentes fluxos de trabalho do SharePoint Designer para lidar com algumas aprovações de documento. SPD fornece os "coletar dados de um usuário" ação para que nós pode solicitar ao usuário para diferentes bits de informação, como se eles aprovarem isso, alguns comentários e talvez perguntar o que eles tinham para jantar naquela noite.

As formas são perfeitamente funcionais. Eles estão ligados a uma lista de tarefas como um tipo de conteúdo. Eles são 100% gerados pelo sistema. Esta é sua força e fraqueza. Se podemos viver com o formulário padrão, Então estamos prontos para ir. No entanto, Não temos mais controle sobre como o SPD cria o formulário. Se não gostamos que o comportamento padrão, Precisamos de recorrer a vários truques para contorná-la (por exemplo, definindo a prioridade em uma tarefa).

Eu precisava para fornecer um link sobre estes formulários de tarefa que abriu as propriedades de exibição (DispForm.asxp) do "item relacionado" em uma nova janela. Isso fornece acesso de um clique para os meta dados do item relacionado. Isto é o que quero dizer:

imagem

Graças a Deus, Podemos fazer isso e não é muito difícil. Em termos gerais, fogo até o SPD, Navegue até o diretório que abriga os arquivos de fluxo de trabalho e abra o arquivo ASPX que deseja modificar. Estas são instruções de transformação XSL só clássicas, e se você já com mucked ItemStyle, pesquisa ou outros cenários XSL, Isto vai ser fácil para você. Na verdade, Eu achei a ser geralmente mais fácil, uma vez que o formulário gerado é um pouco mais fácil de seguir em comparação com uma web part de pesquisa principais resultados (ou o um pesadelo CWQP).

É claro, Há uma grande armadilha. Editor de fluxo de trabalho do SPD espera total controle sobre esse arquivo. Se você modificá-lo, SPD alegremente substituirá suas dão alterações o direito conjunto de circunstâncias. Eu fiz dois testes rápidos para ver o quão ruim isso pode ficar. Ambos pressupõem que você tenha criado um fluxo de trabalho SPD válido que usa os "coletar dados de um usuário" etapa.

Teste 1:

  • Modificar o arquivo ASPX com a mão.
  • Testá-lo (Verifique se as alterações foram salvas corretamente e não quebrou nada).
  • Abrir o fluxo de trabalho e adicionar uma ação independente (como "log de histórico").
  • Salvar o fluxo de trabalho.

Resultado: Neste caso, SPD não re-criar o formulário.

Teste 2:

  • Faça o mesmo que #1 exceto diretamente modificar os "coletar dados de um usuário" ação.

Resultado: Este re-cria a forma do zero, excesso, escrevendo suas alterações.

Notas finais:

  • Pelo menos duas ações de SPD criar formulários como este: "Coletar dados de um usuário" e "Atribuir a ver Item". Ambas estas ações’ formulários podem ser modificados manualmente.
  • Eu era capaz de gerar o meu link para DispForm. aspx porque, Neste caso, o item de relacionar sempre tem seu ID incorporado no URL do item relacionado. Eu era capaz de extraí-lo e construir uma <a href> com base nele para fornecer o recurso de acesso de dados de meta de um clique. É improvável que seu URL segue essa regra. Pode haver outras maneiras de obter o ID do item relacionado, mas não tive que atravessar aquela ponte, Então eu não sei se fica para o outro lado do abismo.
  • Eu não investigo, Mas eu não ficaria surpreso se houver algum tipo de arquivo de modelo na 12 colméia que eu poderia modificar para afetar como SPD gera os formulários padrão (assim como podemos modificar modelos de alerta).

</fim>

Subscreva ao meu blog!

4 pensamentos "Fluxo de trabalho do SPD “Coletar dados de um usuário”: Modificar o formulário de tarefas gerado

  1. Jim Bob Howard

    Paulo,

    Boa informação. Eu gostaria de adicionar um cenário que recria a forma:

    Teste 3:

    <Li>Faça o mesmo que #1 exceto o nome de tLi mudança de fluxo de trabalho (Clique o <Botão voltar para pegar o "definir seu novo fluxo de trabalho" página).</Li>

    Resultado: SPD renomeia o diretório que contém o fluxo de trabalho e as formas. Porque isso é criá-lo em um "novo" diretório, o formulário é recriado do zero, excesso, escrevendo suas alterações.

    Resposta
  2. Sem nome

    http://www.batteryfast.co.uk/compaq/310924-b25.htm bateria de 310924-b25 da Compaq,
    http://www.batteryfast.co.uk/compaq/pp2162s.htm Compaq pp2162s bateria,
    http://www.batteryfast.co.uk/compaq/pp2160.htm Compaq pp2160 bateria,
    http://www.batteryfast.co.uk/compaq/n150.htm Compaq n150 bateria,
    http://www.batteryfast.co.uk/compaq/n200.htm Compaq n200 bateria,
    http://www.batteryfast.co.uk/compaq/n620.htm Compaq n620 bateria,
    http://www.batteryfast.co.uk/compaq/pp2111x.htm Compaq pp2111x bateria,
    http://www.batteryfast.co.uk/dell/inspiron-6000.htm dell inspiron 6000 bateria,
    http://www.batteryfast.co.uk/dell/inspiron-9200.htm dell inspiron 9200 bateria,
    http://www.batteryfast.co.uk/dell/inspiron-9300.htm dell inspiron 9300 bateria,
    http://www.batteryfast.co.uk/dell/inspiron-9400.htm dell inspiron 9400 bateria,
    http://www.batteryfast.co.uk/dell/e1705.htm Dell e1705 bateria,
    http://www.batteryfast.co.uk/dell/m1210.htm Dell m1210 bateria,
    http://www.batteryfast.co.uk/dell/nf343.htm Dell nf343 bateria,
    http://www.batteryfast.co.uk/dell/1210.htm Dell 1210 bateria,
    http://www.batteryfast.co.uk/dell/cg036.htm Dell cg036 bateria,
    http://www.batteryfast.co.uk/dell/t6840.htm Dell t6840 bateria,
    http://www.batteryfast.co.uk/dell/latitude-x1.htm bateria do Dell latitude X1,
    http://www.batteryfast.co.uk/dell/xd187.htm Dell xd187 bateria,
    http://www.batteryfast.co.uk/dell/inspiron-1300.htm dell inspiron 1300 bateria,
    http://www.batteryfast.co.uk/dell/inspiron-b120.htm bateria do dell inspiron b120,
    http://www.batteryfast.co.uk/dell/inspiron-b130.htm dell inspiron b130 bateria,
    http://www.batteryfast.co.uk/gateway/m680.htm bateria de gateway m680,
    http://www.batteryfast.co.uk/gateway/m360.htm bateria de gateway m360,
    http://www.batteryfast.co.uk/gateway/m460.htm bateria de gateway m460,
    http://www.batteryfast.co.uk/hp/m2000.htm HP m2000 bateria,
    http://www.batteryfast.co.uk/hp/dv1000.htm HP dv1000 bateria,
    http://www.batteryfast.co.uk/hp/dv4000.htm HP dv4000 bateria,
    http://www.batteryfast.co.uk/hp/ze2000.htm HP ze2000 bateria,
    http://www.batteryfast.co.uk/hp/hstnn-db17.htm HP hstnn-db17 bateria,
    http://www.batteryfast.co.uk/hp/n6000.htm HP n6000 bateria,
    http://www.batteryfast.co.uk/hp/n6100.htm HP n6100 bateria,
    http://www.batteryfast.co.uk/hp/f2019.htm HP bateria f2019,
    http://www.batteryfast.co.uk/hp/f2019a.htm HP f2019a bateria,
    http://www.batteryfast.co.uk/hp/f2019b.htm HP f2019b bateria,
    http://www.batteryfast.co.uk/hp/hstnn-db02.htm HP hstnn-db02 bateria,
    http://www.batteryfast.co.uk/hp/dp399a.htm HP dp399a bateria,
    http://www.batteryfast.co.uk/hp/383968-001.htm HP 383968-001 bateria,
    http://www.batteryfast.co.uk/hp/f1739a.htm HP f1739a bateria,

    Resposta
  3. Kirsten

    Obrigado por este é só o que eu estou procurando!

    Eu coletei alguns dados de um usuário em uma etapa do fluxo de trabalho do SharePoint Designer e agora eu quero exibir dados em um segundo “Coletar dados de usuário” formulário em uma etapa subseqüente no meu fluxo de trabalho. Como posso adicionar o conteúdo da variável de dados meu fluxo de trabalho na coletar dados de formulário de usuário?

    Poderia mostrar o código que você usar para conseguir isso?
    Obrigado,
    Kirsten

    Resposta
    1. Paul Galvin pós autor

      Desculpe por Nunca responder. Eu estou fazendo agora um processo de limpeza do blog gigante e peço desculpas para a falta de você. Espero que você descobriu uma boa solução.

      Resposta

Deixe uma resposta para Paul Galvin Cancelar resposta

seu endereço de e-mail não será publicado. Campos obrigatórios são marcados *