Configurar regras de vinculação de controles
Este artigo tem como objetivo apresentar a capacidade de regras de联动 (interligação) para controles de modelo.
Observação especial: (1) Este recurso é suportado apenas nas versões Profissional e superiores. (2) A interligação de controles de modelo é suportada apenas para preenchimento na página de assinatura; o preenchimento/pré-preenchimento via OpenAPI ainda não é suportado. (3) As regras de interligação suportam 7 tipos de ações de execução: Exibir, Ocultar, Obrigatório, Não obrigatório, Atribuir valor, Limpar, Desabilitar.
1. Visão geral do recurso
1.1 Introdução ao recurso
Na página de configuração do modelo de contrato, é possível definir regras de interligação (condições de acionamento e ações de execução) para um determinado controle de preenchimento, realizando associações lógicas entre vários campos de preenchimento. Por meio desta capacidade de configuração, uma condição em um controle pode acionar múltiplos controles para executar as seguintes ações:
| Ação | Efeito |
|---|---|
| Exibir / Ocultar | Controla se o controle alvo é visível na página de assinatura |
| Obrigatório / Não obrigatório | Alterna o estado de obrigatoriedade do controle alvo |
| Atribuir valor | Preenche automaticamente o controle alvo com valores personalizados/valores de opções, valores de outros controles ou resultados de cálculos de data |
| Limpar | Define o valor atual do controle alvo como vazio |
| Desabilitar | O controle alvo fica cinza e não pode ser editado manualmente (mas ainda suporta preenchimento e substituição por meio de esquemas de atribuição de valor) |
1.2 Cenários de aplicação
Aplica-se à configuração básica genérica de contratos, bem como aos contratos principais das áreas de serviços, compras e vendas. Com base nos resultados de preenchimento de controles como seleção única, seleção múltipla, lista suspensa e data, controla dinamicamente a exibição/ocultação e o estado de obrigatoriedade de outros campos de preenchimento, ou realiza automaticamente a atribuição de valor, limpeza e desabilitação, a fim de simplificar o fluxo de preenchimento, reduzir entradas inválidas, garantir que dados críticos não sejam modificados por erro e melhorar a eficiência e a padronização do preenchimento de contratos.
Por exemplo:
-
Interligação de exibição/ocultação e obrigatoriedade: Ao selecionar “Pagamento parcelado” no contrato, os campos de preenchimento como “Valor da parcela” e “Data de pagamento” são exibidos automaticamente e definidos como obrigatórios; ao selecionar “Pagamento à vista”, esses campos são ocultados, evitando a exibição de conteúdo desnecessário no contrato.
-
Integração do sujeito contratante: Selecione “Contratação empresarial” para exibir e exigir o código unificado de crédito social e informações do representante legal; selecione “Contratação pessoal” para alternar para número de identificação civil e endereço de contato.
-
Integração de atribuição de valores: Ao selecionar “Fatura de imposto sobre valor agregado especial” no campo “Tipo de fatura”, os campos “Banco depositário” e “Número da conta bancária” são preenchidos automaticamente nos campos correspondentes, sem necessidade de inserção manual.
-
Cálculo integrado por data: Após preencher a “Data de início do contrato” e o “Prazo do contrato”, a “Data de vencimento do contrato” é calculada automaticamente, dispensando o cálculo manual dos dias.
-
Integração de limpeza + obrigatoriedade: Os controles possuem valores padrão predefinidos, mas em alguns fluxos de negócios exige-se que o signatário preencha manualmente. Nesse caso, limpe o valor padrão e defina o campo como obrigatório para forçar a nova entrada de dados.
-
Integração de atribuição de valores + desabilitação: Após a atribuição automática de valores, o controle é bloqueado para evitar alterações acidentais pelo signatário que possam causar inconsistências nos dados.
2. Descrição do método de configuração
2.1 Entrada de configuração das regras de integração entre controles
Quando você deseja acionar mudanças no estado de outros controles de preenchimento com base no valor de um determinado controle, deve criar uma regra na entrada das propriedades do controle referente à regra “Acionamento”.
Clique no controle para abrir o painel de propriedades à direita, clique em “Criar regra” para acessar a página de edição de regras.

Após configurar a regra, será possível visualizar as regras específicas no painel de propriedades à direita. A partir daqui, também é possível editar ou excluir regras.

Os controles controlados pelas regras de integração também exibem uma indicação de quais controles estão influenciando sua integração ao serem clicados.

2.2 Método de configuração das regras de integração entre controles
Na página de configuração das regras de integração, é possível configurar separadamente as condições de acionamento e os resultados da integração. Como a entrada de configuração das regras está nas propriedades do controle referente à regra “Acionamento”, o controle que define a condição de acionamento é o próprio controle atual (não há suporte ainda para múltiplos controles atuando conjuntamente como gatilho). A partir desse controle, é possível acionar vários outros controles para executar ações de resultado distintas.

2.2.1 Configuração das condições de acionamento
As condições de acionamento são definidas na área [“Ao atender às seguintes condições preliminares”]:
-
Controle: É o controle de gatilho. Quando o valor deste controle satisfaz uma determinada condição, a联动 (interligação) é acionada.
-
Operador: São as condições de operação lógica do valor deste controle. Por exemplo, pode-se selecionar igual, não igual, vazio, não vazio, etc. Os operadores disponíveis variam conforme o tipo de controle.
-
Valor: É o valor preenchido neste controle. Pode ser um valor específico ou o valor de outro controle do mesmo tipo.
-
Quando se trata de um valor específico, selecione primeiro “Valor da Opção”, e em seguida escolha ou insira o valor concreto. Se for uma lista suspensa, opção única ou múltipla, os valores das opções podem ser selecionados diretamente; se for número, texto de linha única, etc., o valor concreto deve ser inserido manualmente.
-
Quando se trata do valor de outro controle do mesmo tipo, selecione primeiro “Valor do Controle”, e em seguida escolha um controle do mesmo tipo (aqui refere-se genericamente ao tipo de dado, não sendo obrigatório que seja exatamente o mesmo tipo de controle). Por exemplo, a condição pode ser definida como: o valor do controle “Valor Total do Contrato” é maior que o valor do controle “Valor do Adiantamento”.
-

Quando um controle de data atua como controle de gatilho, os operadores suportados são: vazio, não vazio, igual, não igual, maior, menor, maior ou igual, menor ou igual; o valor da condição permite selecionar uma data fixa.
2.2.2 Configuração dos Resultados da Interligação
Os resultados da interligação são configurados na área [“Acionar as seguintes interligações”]:
-
Ação: Inclui 7 tipos: Exibir, Ocultar, Obrigatório, Não Obrigatório, Atribuir Valor, Limpar, Desabilitar (na ordem correspondente à lista suspensa). É possível adicionar várias ações de execução para controlar em lote múltiplas ações em vários controles.
-
Controle: Selecione o(s) controle(s) no qual(ais) esta ação será executada; é possível selecionar mais de um.
-
Observação: Apenas controles pertencentes ao mesmo participante e ao mesmo arquivo de contrato que o controle de gatilho podem ser selecionados.
-
Observação: A ação de atribuir valor permite selecionar apenas 1 controle de destino; quando for necessário atribuir valores a vários controles, configure várias ações de atribuição de valor.
-
Pontos-chave de configuração de cada ação:
| Ação | Necessário configurar valor? | Descrição |
|---|---|---|
| Exibir / Ocultar / Obrigatório / Não Obrigatório | Não | Basta selecionar o controle de destino |
| Atribuir valor | Sim | É necessário selecionar a origem do valor (veja abaixo) |
| Limpar | Não | Basta selecionar o controle de destino, sem necessidade de especificar um valor |
| Desabilitar | Não | Basta selecionar o controle de destino, sem necessidade de especificar um valor |


Origem do valor para a ação de atribuição (as opções no menu suspenso variam conforme o tipo de controle de destino):
-
Personalizado / Valor da opção: Quando o destino é numérico, texto de uma linha, texto de várias linhas, etc., o menu suspenso exibe “Personalizado”; insira manualmente o valor, que será preenchido automaticamente no controle de destino quando as condições forem atendidas. As regras de validação de entrada são as mesmas das configurações padrão do controle; se o destino for um controle numérico, o valor será formatado automaticamente de acordo com o número de casas decimais e o formato de separador de milhar do controle de destino (por exemplo, ao inserir 3,14159 em um controle com 2 casas decimais, o resultado será 3,14). Quando o destino é de seleção única, seleção múltipla, menu suspenso ou caixa de seleção, o menu suspenso exibe “Valor da opção”; selecione o valor entre as opções disponíveis no próprio controle de destino. Para caixas de seleção, o valor da opção baseia-se no valor padrão do controle, permitindo apenas a configuração de “marcado” (ou seja, selecionado); para restaurar o estado não selecionado de uma caixa de seleção, use a ação “Limpar”.
-
Valor do controle (referenciar outro controle): Referencia o valor atual de outro controle no mesmo documento e sob o mesmo participante. Os tipos de controles que podem ser referenciados devem ser compatíveis com o controle de destino: controles de texto (texto de uma linha e texto de várias linhas) são mutuamente compatíveis; valores numéricos só são compatíveis com outros controles numéricos. Controles de seleção única, menu suspenso e caixa de seleção não suportam referência de valor de controle quando usados como destino de atribuição; para mapeamentos entre controles, configure múltiplas regras por meio dos valores das opções. Se o valor do controle referenciado estiver vazio, a atribuição não terá efeito.
-
Expressão de cálculo (cálculo de data): Disponível apenas quando o controle de destino é um controle de data (essa opção não aparece no menu suspenso de valores para destinos que não sejam datas). Calcula automaticamente a data de destino com base em “Data inicial ± dias” (consulte 2.2.3 para mais detalhes).

2.2.3 Instruções para atribuição via cálculo de data
Quando o destino da atribuição é um controle de data, selecione “Expressão de cálculo” como origem do valor e clique em “Configurar” para abrir a janela de configuração do cálculo automático, onde você pode configurar:
-
Data inicial: Selecione um controle de data do mesmo documento e participante como base para o cálculo
-
Operador de cálculo: Adição (data futura) / Subtração (data passada)
-
Origem da duração: Referência a um controle numérico (suporta resultados de cálculos de fórmulas) ou um valor fixo (inteiro positivo de 1 a 36500)
-
Duração e unidade: Dia / Mês / Ano, sendo o dia o padrão
Regras de conversão para cálculos de data:
| Unidade | Regra de cálculo |
|---|---|
| Dia | Adicionar/subtrair diretamente N dias a partir da data de início |
| Mês (mês natural) | Adicionar/subtrair N meses à data de início e selecionar o mesmo dia do mês de destino; se o mês de destino não tiver esse dia (por exemplo, 31 de janeiro + 1 mês), selecione o último dia do mês de destino |
| Ano (ano natural) | Adicionar/subtrair N anos à data de início e manter o mesmo mês e dia; se for 29 de fevereiro e o ano de destino não for bissexto, retroceder para 28 de fevereiro |
Inclusão do dia inicial: pode ser marcada quando a unidade de duração é mês ou ano. Após a marcação, o resultado do cálculo será a data de vencimento do prazo (resultado do mês/ano natural - 1 dia), aplicável a cenários de cálculo de prazos como a data de expiração de contratos. Por exemplo, com início em 15/01/2026 por 1 mês e a opção “incluir dia inicial” marcada, o resultado será 14/02/2026. Se o resultado do mês/ano natural já acionar o ajuste para o final do mês ou para anos não bissextos (conforme tabela acima), não será subtraído mais 1 dia do resultado ajustado.
Se o valor no controle numérico da fonte de duração contiver casas decimais, ele será arredondado para o número inteiro antes de participar do cálculo.

2.3 Escopo dos controles suportados pelas regras de vinculação
Controles que podem servir como condição de gatilho (7 tipos): texto de linha única, número, texto de múltiplas linhas, seleção única, seleção suspensa, caixa de seleção, data
Escopo dos controles de resultado da vinculação (diferenciados por ação):
| Ação | Controles que podem ser alvo |
|---|---|
| Exibir / Ocultar / Desabilitar | Todos os controles, exceto cláusulas contratuais, número do contrato e tabelas dinâmicas |
| Obrigatório / Não obrigatório | Todos os controles (incluindo aqueles vinculados a fontes de dados e calculados por fórmulas) |
| Atribuir valor / Limpar | Texto de linha única, texto de múltiplas linhas, número, seleção única, seleção suspensa, caixa de seleção, data (7 tipos); controles vinculados a fontes de dados, calculados por fórmulas e de autenticação de identidade real não podem ser alvos de atribuição de valor ou limpeza |
2.4 Explicação sobre a validação de regras conflitantes
Em um arquivo de contrato, se várias regras de vinculação forem configuradas, podem surgir conflitos entre as regras, levando a resultados possivelmente inesperados. Para evitar erros de configuração, implementamos algumas mensagens de validação. Ao encontrar as seguintes mensagens de conflito, você pode ajustar a configuração das regras conforme indicado, para atender à lógica de preenchimento e alcançar o objetivo de preenchimento padronizado.
Dentro da mesma regra, as seguintes configurações são consideradas conflituosas e serão bloqueadas na salvamento:
-
As ações de “ocultar e obrigatório”, “ocultar e exibir” e “obrigatório e não obrigatório” são mutuamente exclusivas. Nas mesmas condições de acionamento, um mesmo controle não pode executar simultaneamente essas ações.
-
Configurar simultaneamente atribuição e limpeza (interceptação com aviso: “Não é permitido configurar atribuição e limpeza simultaneamente no mesmo controle alvo dentro da mesma regra”) para o mesmo controle alvo
-
Configurar múltiplas ações de atribuição para o mesmo controle alvo
-
Configurar simultaneamente desabilitação e obrigatoriedade (interceptação com aviso: “Não é permitido configurar obrigatoriedade e desabilitação simultaneamente no mesmo controle alvo dentro da mesma regra”; após a desabilitação, o controle não pode ser editado manualmente. Se for obrigatório e estiver vazio, o signatário não poderá enviar) para o mesmo controle alvo
As seguintes situações permitem salvar, e as regras na página de assinatura serão executadas conforme a ordem de acionamento (o resultado do acionamento posterior sobrescreve o do anterior):
-
Diferentes regras configuram atribuições separadamente para o mesmo controle alvo
-
Diferentes regras configuram limpeza e atribuição separadamente para o mesmo controle alvo
-
Não é recomendável configurar duas regras completamente idênticas (testes práticos: nesta versão atual, não há aviso de interceptação; regras duplicadas não produzem efeitos adicionais e são executadas conforme a ordem de configuração)
3. Explicação sobre a execução das regras na página de assinatura
O preenchimento e a assinatura são concluídos na mesma página de assinatura, não existindo uma página de preenchimento independente. Quando o signatário preenche o conteúdo do contrato na página de assinatura via PC ou H5, os controles com regras de vinculação exibem o indicador “Regras de Vinculação”: no PC, o indicador está ao lado do nome do controle no painel Form Filling à direita, e ao passar o mouse é possível visualizar uma dica com a explicação da regra (listando condição de acionamento e resultado de execução); no H5, o indicador está ao lado do nome do controle, e ao clicar é possível visualizar uma janela pop-up com a explicação da regra. A seguir, usa-se a interface em inglês do PC como exemplo.

Existem dois momentos para o acionamento das regras:
-
Após entrar na página de assinatura, se o controle de acionamento tiver um valor padrão ou pré-preenchido, a vinculação do controle será acionada imediatamente.
-
Após concluir o preenchimento do conteúdo no controle de acionamento, a vinculação do controle também será acionada imediatamente. (Se já houver conteúdo, o acionamento por atribuição substituirá o valor original)

Efeitos da execução de cada ação na página de assinatura:
| Ação | Quando a condição é atendida | Quando a condição deixa de ser atendida |
|---|---|---|
| Exibir / Ocultar / Obrigatório / Não obrigatório | Executar conforme regra | Restaurar controle para as configurações padrão do modelo |
| Atribuir valor | O controle de destino preenche automaticamente com o valor configurado; o signatário ainda pode modificar manualmente | Não executa a atribuição, nem limpa ou restaura o valor atual do controle de destino |
| Limpar | O valor do controle de destino é definido como vazio, exibindo-se da mesma forma que um controle nunca preenchido | Não executa a limpeza, mantém o valor atual e não restaura automaticamente o valor padrão |
| Desabilitar | O controle de destino fica cinza e não pode ser editado manualmente; os valores existentes são exibidos normalmente | O controle é automaticamente restaurado para o estado editável, mantendo o valor atual inalterado |
Observações adicionais:
-
Interação entre atribuição de valor e outras funcionalidades: Após atribuir um valor a um controle, se esse controle for uma entrada para cálculo de fórmula, a fórmula será recalculada imediatamente com base no novo valor.
-
Combinação de limpar e obrigatório: Após limpar, combinado com a obrigatoriedade, o controle fica em estado vazio e obrigatório; o signatário deve inserir manualmente dados para poder submeter.
-
Sobreposição de limpar e desabilitar: Quando acionados pelas mesmas condições, primeiro ocorre a limpeza e depois a desabilitação, resultando em estado vazio e não editável.
-
Desabilitar não afeta gravação pelo sistema: A desabilitação apenas impede a edição manual pelo signatário; atribuições por联动 (ligação), preenchimento por fonte de dados, cálculos de fórmula e gravações via OpenAPI podem continuar escrevendo dados normalmente em controles desabilitados.
-
Desabilitar e exibir/ocultar são independentes: Quando um controle está oculto, seu estado de desabilitação é preservado; ao ser reexibido, o estado de desabilitação é determinado pelas condições atuais.
-
Saída PDF de controles limpos/desabilitados: Controles limpos são exportados como valores vazios no documento do contrato; controles desabilitados têm seus valores exportados normalmente, sem efeito visual de cor cinza.
Após submeter o conteúdo para assinatura, os controles ocultos não serão renderizados no documento do contrato, nem sofrerão verificação de obrigatoriedade, mas, se houver dados preenchidos, eles ainda serão mantidos e poderão ser consultados.
4. Perguntas frequentes
P1: Ao configurar o modelo, defini regras de ligação apenas em um controle, por que outros controles também apresentam a mesma regra?
R: Isso ocorre porque esses controles estão agrupados para preenchimento conjunto. Quando vários controles são preenchidos conjuntamente, seus valores na página de assinatura são idênticos, acionando as mesmas regras de ligação. Durante a configuração, verifique se múltiplos controles estão sujeitos ao preenchimento conjunto; analise se as regras acionadas atendem às expectativas quando novos controles são adicionados ao grupo de preenchimento conjunto ou quando controles históricos saem desse grupo.
Q2: Ao configurar o modelo, por que as regras de vinculação apresentam anomalias quando o nome de uma opção no controle de seleção suspensa é alterado?
R: Quando se define que o valor do controle suspenso é igual a determinada opção como gatilho da regra, e posteriormente o nome da opção é ajustado, as opções nas regras de vinculação não são atualizadas automaticamente; é necessário selecioná-las novamente.
Q3: Por que os resultados da execução na página de assinatura não correspondem às regras configuradas?
R: Isso ocorre porque a execução das regras de vinculação dos controles segue alguns princípios:
-
Primeiro, quando a condição de gatilho não é atendida, ações de visibilidade/obrigatoriedade retornam à configuração padrão do modelo.
-
Segundo, a prioridade de execução das regras de vinculação possui uma ordem definida. Quando um controle é acionado por múltiplas regras, as regras executadas mais tarde (ou seja, com ordem posterior) têm maior prioridade.
-
Terceiro, ações de atribuição e limpeza não ajustam proativamente o valor atual do controle alvo quando a condição não é atendida (não limpam nem restauram o valor padrão); ações de desabilitação restauram a editabilidade quando a condição não é atendida, mas mantêm o valor inalterado.
Por exemplo: quando [Cidade Responsável] é igual a [Região de Serviço], [Explicação da Responsabilidade por Inadimplência] é exibida. Isso significa que, quando os valores desses dois controles forem diferentes, [Explicação da Responsabilidade por Inadimplência] deve ser ocultada? — Não necessariamente. De acordo com o princípio de implementação, quando a condição não é atendida, o controle retorna à configuração padrão do modelo. Como o controle está configurado no modelo para ser exibido por padrão, ele continuará sendo exibido, sem mudar automaticamente para o estado oposto.
Solução: Se for necessária uma lógica estritamente inversa, basta adicionar outra configuração na regra de vinculação: “Quando [Cidade Responsável] não for igual a [Região de Serviço], oculte [Explicação da Responsabilidade por Inadimplência]”.
Q4: Por que as regras de vinculação não funcionam ao preencher/preencher previamente conteúdo em uma planilha Excel ao iniciar em lote usando modelos?
R: Porque o preenchimento/preenchimento prévio via OpenAPI ainda não oferece suporte às regras de vinculação dos controles. Atualmente, as regras de vinculação só são acionadas durante o preenchimento na página de assinatura. Nos cenários de início em lote ou preenchimento/preenchimento prévio via OpenAPI, certifique-se manualmente da precisão do conteúdo preenchido.
Q5: Após a atribuição vinculada, o signatário ainda pode modificar o controle que recebeu o valor atribuído?
R: Sim. A atribuição apenas insere automaticamente um valor; o signatário ainda pode modificá-lo manualmente. Se desejar bloquear o controle após a atribuição para impedir modificações, configure uma ação de “desabilitar” para esse controle na mesma regra ou em outra regra.
Q6: Por que, ao atribuir valores a controles de opção única, seleção suspensa e caixas de seleção, não é possível escolher a origem “Valor do Controle”?
R: As coleções de opções de diferentes controles podem não ser consistentes, o que pode levar a falhas de correspondência ao referenciar diretamente os valores das opções. Esses três tipos de controles, quando usados como alvos de atribuição, suportam apenas a origem “Valor da Opção”. Para implementar mapeamentos como “Controle de origem seleciona A → Controle de destino seleciona B”, configure múltiplas regras baseadas nos valores das opções. Por exemplo: quando o controle de opção única de origem estiver definido como “Categoria A”, configure uma regra para atribuir ao controle de opção única de destino o valor da opção “Nível Um”. Atenção especial: para controles de caixa de seleção, os valores das opções só podem ser configurados como “Marcado” (selecionado). Se precisar que o controle de caixa de seleção de destino retorne ao estado não selecionado, utilize a ação “Limpar”.
P7: Como calcular quando se seleciona as unidades “mês” ou “ano” para cálculos de data, em casos de fim de mês ou ano bissexto?
R: Ao calcular por mês, utiliza-se o mesmo dia do mês de destino; caso esse dia não exista no mês de destino, usa-se o último dia desse mês (por exemplo, 31 de janeiro + 1 mês = 28/29 de fevereiro). Ao calcular por ano, utiliza-se o mesmo mês e dia do ano de destino; se for 29 de fevereiro e o ano de destino não for bissexto, retrocede-se para 28 de fevereiro. Se a opção “incluir dia inicial” estiver marcada, o resultado será o dia de vencimento do prazo (subtraindo-se 1 dia); caso tenha ocorrido um retrocesso devido ao fim de mês ou ao ano bissexto, não se subtrai mais nada sobre o resultado já ajustado.







