LiveCycle forms: Data Binding

Erba, como vão?

Aqui a coisa tá hard rock! Muito peixe, lula, caranguejo apimentado e forms na veia hehehehe

Hoje passei por uma situação e vou compartilhar aqui, pode ajudar muita gente.

Digamos que você está trabalhando num projeto que envolva formulários PDF. Você desenvolve esses formulários que serão utilizados em um sistema web de workflow qualquer (não LiveCycle). O papel do LiveCycle (Output nesse caso) vai ser somente receber via web service um XML desse sistema e fazer o merge com o seu template de formulário PDF.

Mas aí o time de desenvolvedores do sistema de worflow te pergunta: Como eu devo gerar esse XML? Claro, agora você tem que fazer um schema pra eles. Mas isso já estava previsto, não é?

Dentro do seu formulário você tem um dropdownlist que é pre-populado com os dados vindos do XML deles. Mas quando você clica em submit, o formulário envia novamente o XML com os dados preenchidos pelo usuário, mas manda também toda a lista que veio pre-populada do dropdownlist anteriormente. Mas o outro time não quer receber toda essa informação de novo, certo? Só querem receber o item que o usuário selecionou. Compreensível.

Então antes de submeter o formulário você precisa tirar no script na mão os outros itens. Seleciona o botão de submit e no evento mouseUp coloca a seguinte linha:

$record.nodes.remove($record.MeuDropDownList);

Beleza, vai funcionar. E o que isso faz? Remove a informação a mais. Mas no lugar do MeuDropDownList você claro coloca a identificação do nó no seu XML.

Mas de repente você vai testar seu formulário feito no LiveCycle Designer, e que tem mais de 1000 campos e vê que quando clica em Submit mesmo os campos em branco aparecem no XML de saída:

<\nome>
<\fax>

Então é por isso que no seu Schema você precisa definir em todos esses campos como minOccurs=”0″:


<xs:element minOccurs="0" maxOccurs="1" name="nome" type="xs:string" />

<xs:element minOccurs="0" maxOccurs="1" name="fax" type="xs:string" />

Assim se o campo estiver vazio, ele não aparece no XML final.

É isso.

Anúncios

2 Responses to “LiveCycle forms: Data Binding”


  1. 1 Jonathan Diego Gomes de Medeiros sábado, 14 julho, 2012 às 7:50 am

    Ou Parceiro Não Consegui fazer Com Que Meu Template em xml, Feito no liveCycle Foce Reconhecido no Blogger Tem Como Você me Ajudar em Relação a isso eu só queria fazer um formulario.


Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s





%d blogueiros gostam disto: