Tabelas Multivaloradas

Uma tabela multivalorada é uma tabela com campos do formulário onde o ator do processo pode adicionar quantas linhas achar necessário, colocando mais e mais informações no processo.

Este recurso pode ser utilizado, por exemplo, para uma tabela com itens para compra, onde não sabemos ao exato quantos itens de compra o ator/requisitante irá necessitar digitar.

ATENÇÃO Para utilizar uma tabela multivalorada, é necessário que o campo "Visual" do formulário esteja com valor "Editor".

Para criar uma tabela multivalorada, dentro do cadastro do formulário, clique no botão "Editor visual". Uma nova janela será aberta.

Nesa janela, encontra-se o editor visual. Clique no ícone correspondente, apontado abaixo, para incluir uma tabela no editor:

Uma pequena tela de configuração será aberta:

  1. Linhas: uma tabela multivalorada terá, sempre, 2 linhas;
  2. Colunas: selecione quantas colunas achar necessário;
  3. Tabela multivalorada: selecione essa opção se desejar que essa tabela seja multivalorada;
  4. Título: opcional, será o título dessa tabela;
  5. OK: clique nesse botão para salvar a tabela;

Uma vez inserida a tabela, ela irá parecer mais ou menos assim:

A partir daí, adicione na primeira linha, nas respectivas colunas, o título dos campos do formulário, utilizando o comando {Label.Identificador do campo}. Na segunda linha, adicione, nas respectivas colunas, o campo, usando o comando {Campo.Identificador do campo}. Veja abaixo:

É obrigatório que a tabela multivalorada tenha duas linhas: uma com o cabeçalho, outra com o template da linha que será duplicada

Salvo o visual do formulário, é possível utilizá-lo em um processo. Ao abrir a tela de execução do processo, a tabela multivalorada será disponibilizada para uso. O usuário pode clicar nos botões "Inserir" ou "Excluir" para adicionar linhas na tabela do formulário.

Campos com fonte de dados dependentes

Existem casos em que a configuração da tabela com campos do tipo fonte de dados, onde o resultado de uma fonte de dados do tipo SQL depende do valor de outro campo também do tipo fonte de dados.

Abaixo, podemos ver um formulário com 2 campos do tipo fonte de dados, na visualização do formulário do tipo padrão.



  1. Ativo: Fonte de dados que possui as opções de N e S para trazer os usuários ativos nas opções do campo Usuário;
  2. Usuário: Fonte de dados do tipo SQL que busca os usuários do sistema ativos e não ativos. Quando escolhido a opção "S" no campo "Ativo", todos os usuário ativos do sistema são carregados na fonte de dados, quando escolhido a opção "N", os usuários não ativos que são carregados;

Após selecionado uma das opções da fonte de dados "Ativo", as opções da fonte de dados "Usuário" são carregadas.



A imagem abaixo mostra a configuração da fonte de dados SQL, para que seja dependente do campo anterior, com destaque para o parâmetro que fornece o valor do campo:

Obs: Quando uma fonte de dados do tipo SQL possui dependência do valor escolhido por outro campo do tipo fonte de dados para que o resultado desta seja retornado, é necessário que o campo que fornece o valor para o campo dependente esteja primeiro na ordem do formulário com visual padrão, para então possa ser configurado no tipo editor.

No tipo de visualização "Editor" do formulário, quando adicionamos uma tabela multivalorada  com os campos citados acima, a visualização da configuração da tabela irá parecer mais ou menos assim:



Dessa maneira, a primeira coluna fica responsável por fornecer o parâmetro para a coluna 2 e para cada linha, os valores são diferentes, então é necessário sempre adicionar valores para todos os campos:



Também é possível incluir uma tabela multivalorada em que o campo que fornece o valor para o campo dependente, esteja fora da tabela multivalorada:

ATENÇÃO! Quando utilizado a opção acima, não é possível selecionar opções diferentes com base na fonte de dados que fornece o parâmetro para o campo dependente, ou seja, como mostrado no exemplo, caso seja selecionado o valor "S" no campo "Ativo", apenas serão listados os usuários ativos para todas as opções do campo "Usuário" nas linhas da tabela multivalorada. Além disso, caso seja mudado o valor do campo "Ativo", todas as opções dos campos da tabela serão alterados.

A partir da versão 3.9 do Orquestra BPMS é possível a utilização de campos do tipo Arquivo em tabelas multivalorada.

ATENÇÃO! Não é possível a utilização de campos do tipo Múltipla Seleção (checkbox) e Múltipla Escolha (radio) dentro da célula de uma tabela multivalorada, nem é possível o uso de tabelas-multivaloradas de maneira encadeada (uma dentro da outra). Existe também um limite de campos do formulário, conforme manual de criação de campos do formulário, que é de 180 campos. Isso inclui linhas duplicadas em uma tabela multivalorada (ou seja, se sua tabela tem 3 colunas com 3 campos, e 10 linhas, o total de campos é 30).