HTML |
---|
<style> /* Início estilo banner */ .compositiondani-banner { position: relative; min-height: 220px; border-radius: 5px; margin-bottom: 5px; overflow: hidden; } .compositiondani-banner-image { background-image: url("https://totvscrm.com/wp-content/uploads/2023/08/capa-com-fundo-e-sem-icone-TDN21.png"); background-size: cover; min-height: inherit; width: 100%; } .compositiondani-banner-overlay { min-height: inherit; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 5px; pointer-events: none; } .compositiondani-banner-logo-container { display: flex; justify-content: center; align-items: center; position: absolute; top: 50%; left: 50%; bottom: 0; transform: translate(-50%, -50%); } .compositiondani-banner-logo { width: 350px; height: 180px; background-image: url("https://totvscrm.com/wp-content/uploads/2023/09/logo-com-descricao-totvsgc.png"); background-size: contain; background-repeat: no-repeat; } .compositiondani-banner-title { margin-bottom: 10px !important; padding: 10px !important; background: rgba(0, 0, 0, 0.5) !important; display: flex !important; justify-content: center !important; align-items: center !important; font-size: 12px !important; line-height: 1.3 !important; max-height: 133px !important; font-family: "Roboto", sans-serif !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; text-overflow: ellipsis !important; color: #ffffff !important; position: relative !important; margin-top: 130px !important; border-radius: 10px !important; } .compositiondani-banner-content { position: absolute; padding: 30px; max-width: 60%; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; color: white; text-align: center; } .custom-header h1 { font-size: 16px; background-color: rgba(0, 0, 0, 0.6); padding: 10px; border-radius: 5px; margin: 0; } .negrito-materialize { font-weight: bold; } .custom-margin-justified { margin: 0 20px; text-align: justify; } /* Final estilo banner */ #content.page.view { padding-right: 0 !important; } /* impedir vermelho no nav */ #breadcrumb-section > nav { background-color: initial !important; box-shadow: none !important; } @media only screen and (min-width: 601px) { nav, nav .nav-wrapper i, nav a.sidenav-trigger, nav a.sidenav-trigger i { height: auto !important; line-height: normal !important; } } /* final vermelho no nav */ </style> <header> <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400&display=swap" rel="stylesheet"/> <div class="compositiondani-banner"> <div class="compositiondani-banner-image"></div> <div class="compositiondani-banner-overlay"></div> <div class="compositiondani-banner-logo-container"> <div class="compositiondani-banner-logo"></div> </div> <div class="compositiondani-banner-content"> <h1 class="compositiondani-banner-title"> REGRAS DE OCULTAÇÃO E EDIÇÃO CONDICIONAIS NA TELA DE CLIENTES </h1> </header> </div> </div> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css" /> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css"> <!-- Inclua o estilo do tema Monokai --> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/styles/monokai.min.css"/> <!-- Bootstrap CSS --> <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet"> <!-- FontAwesome --> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta2/css/all.min.css" /> <style> /* ============================== = CONFIGURAÇÕES GERAIS = =============================== */ * { font-family: "Roboto", sans-serif; margin: 0; padding: 0; box-sizing: border-box; } body { margin: 0; padding: 0; } a { color: #42526e; text-decoration: none; -webkit-tap-highlight-color: transparent; } a:hover { color: white; } li { font-size: 14px !important; } h3 { font-size: 14px !important; font-weight: bold; } h1 { font-size: 14px !important; font-weight: bold; } h1 { font-size: 13px !important; } h2 { font-size: 15px !important; font-weight: bold; } td, th { padding: 6px; } /*: 13px !important; } h2 { font-size: 15px !important; font-weight: bold; } td, th { padding: 6px; } * p { margin-bottom: 0 !important; } /* ============================== = ESTILOS DE TÍTULOS = ================================= */ #title-text { display: none !important; } #content > div.page-metadata > div { float: none !important; line-height: normal !important; width: auto =!important; display: none !important; /* ESTILOSou DEoutra TÍTULOSpropriedade de display que você deseja usar =*/ margin: =============================== */ #title-text { display: none !important; } .element.style { float: right!important; display: none!important; }0 !important; /* ou outra propriedade de margin que você deseja usar */ } #section2 > ol > li:nth-child(2) > p { margin-bottom: 0; } .wiki-content h1, .wiki-content h2 { font-family: "Roboto", sans-serif !important; font-size: 13px!important; } .wiki-content h1 { font-size: 13px !important; } .wiki-content h2 { font-size: 14px !important; color: #42526e !important; border-bottom: 2px solid #dfe1e5; padding-bottom: 5px; font-weight: bold; } .custom-heading, h3.custom-h3 { font-size: 16px; color: #42526e; margin-bottom: 20px; } .custom-h1 { color: #feac0e; } .explanation h2 { font-weight: bold; } /* ============================== = ESTILOS DE TEXTO = =============================== */ .wiki-content p { font-size: 14px !important; } .justificado, .custom-justified { text-align: justify; margin: 10px 0; } /* ============================== = ESTILOS DE LINKS = =============================== */ .wiki-content a, .wiki-content a:link, .wiki-content a:visited, .wiki-content a:focus, .wiki-content a:active { text-decoration: none; color: #42526e; font-size: 14px; } .wiki-content a:hover { color: white; } /* ============================== = ESTILOS DE CONTAINER = =============================== */ .custom-content { background-color: #f5f5f5; padding: 20px; border-radius: 8px; margin: 0 10px; max-width: 100%; overflow: hidden; } .faq-container { max-width: 800px; margin: 0 auto; padding: 20px; } /* ============================== = ESTILOS DE CARDS = =============================== */ .card { border: 2px solid #9aa1ad; padding: 20px; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); border-radius: 8px; background-color: #f4f5f7; color: #42526e; overflow-x: hidden; top: 0; } /* ============================== = ESTILOS DE TABS = =============================== */ .tabs { background-color: #dfe1e5; } .tabs .tab a { color: rgb(66, 82, 110); } .tabs .tab a:hover, .tabs .tab a.active, .tabs .tab a:focus.active { color: #6B48FF; background-color: transparent; } .tabs .tab a:focus { background-color: rgba(82, 97, 232, 0.25); } .tabs .tab.disabled a, .tabs .tab.disabled a:hover { color: rgba(16, 148, 184, 0.24); } .tabs .indicator { background-color: #6B48FF; } .tab-content { gap: 0; padding: 10px; } .tab-content pre { max-width: 100%; overflow-x: hidden; } /* ============================== = ESTILOS DE ÍCONES = =============================== */ .icon-list, .icon { padding-left: 0; list-style-type: none; } .icon { display: inline-block; width: 24px; vertical-align: middle; margin-right: 45px; position: relative; left: -25px; } .item .label i { margin-right: 10px; } .label b { color: #42526e; } td th { color: #42526e; } /* ============================== = ESTILOS DE COMPONENTES = =============================== */ .collapsible, .collapsible-header, .collapsible-body { box-shadow: none !important; } .faq-question { font-weight: bold; margin-bottom: 5px; } .faq-answer { margin-bottom: 20px; } .custom-list { padding-left: 0; margin-left: 1.5em; } .custom-list li { position: relative; padding-left: 1em; } ul.custom-list { padding-left: 10px; } ul.custom-list li { position: relative; list-style-type: disc; padding-left: 30px; margin-bottom: 10px; } .item { display: flex; align-items: center; padding: 10px; border-bottom: 1px solid #eee; } .item:last-child { border-bottom: none; } .item .label { flex: 1; font-weight: bold; } .item .value { flex: 1; text-align: right; } .item { border-bottom: 1px solid #e0e0e0; padding: 10px 0; display: flex; justify-content: space-between; align-items: center; } .item:last-child { border-bottom: none; } /* Estilos para o label */ .label { font-weight: bold; display: flex; align-items: center; } .item .label i { margin-right: 10px; /* Adiciona espaço depois dos ícones */ } /* ============================== = ESTILOS DE IMAGENS = =============================== */ .imagem-responsiva { max-width: 100%; height: auto; } .custom-header-bg img { width: 100%; height: auto; display: block; } /* ============================== = ESTILOS DE VÍDEO = =============================== */ #youtube-video-container iframe { width: 100%; height: auto; display: block; } .video-container { max-width: 800px; margin: 0 auto; } .ytp-cued-thumbnail-overlay-image { background-size: cover; background-position: center; width: 100%; height: 100%; position: absolute; } /* ============================== = OUTROS ESTILOS PERSONALIZADOS = =============================== */ .custom-content { background-color: #f5f5f5; padding: 20px; border-radius: 8px; margin: 0 10px; max-width: 100%; overflow: hidden; } .custom-heading { font-size: 16px; color: #42526e; margin: 10px 0; border-bottom: 2px solid #e0e0e0; padding-bottom: 5px; font-weight: bold; } #indice { border-radius: 5px; padding: 20px; max-width: 100%; overflow: hidden; } #indice h2 { text-align: center; margin-bottom: 16px; } #indice ul { list-style-type: none; padding-left: 0; } #indice li { padding: 10px; border-bottom: 1px solid #eee; cursor: pointer; transition: background-color 0.1s ease; } #indice li:last-child { border-bottom: none; } #indice li:hover { background-color: #6B48FF; color: white; } /* ============================== = ESTILOS DE TABELAS = ============================== */ .custom-grey { background-color: #ffffff; } .custom-grey th, .custom-grey td { border: 1px solid #362194; padding: 10px; color:#362194 } .custom-grey tr:nth-child(even) td { background-color: #F2EEFF#e6e0f7; } .custom-grey tr:nth-child(odd) td { background-color: #ffffff#f4f5f7; } .custom-grey th { color: #fff; background-color: #6B48FF#443391; } .custom-grey td { font-size: 13px; } .custom-grey tr:nth-child(odd) { background-color: #e4e4e6; } .custom-grey tr:nth-child(even) { background-color: #dfdfdf; } .custom-alert-warning { background-color: #fdf1dc; /* ou qualquer outra cor que preferir */ color: #5c4225; /* cor do texto */ border: 1px solid #d6800f; /* adicionando borda da mesma cor que o ícone */ padding: 10px; /* adicione padding conforme necessário */ } .custom-alert-warning .fas { color: #5c4225; /* cor do ícone no alerta de aviso */ margin-right: 10px; /* espaço extra entre o ícone e o texto */ } .custom-alert-danger { background-color: #ffe7ec; /* ou qualquer outra cor que preferir */ color: #9e1d3b; /* cor do texto */ border: 1px solid #eb7893; /* adicionando borda da mesma cor que o ícone */ padding: 10px; /* adicione padding conforme necessário */ } .custom-alert-danger .fas { color: #f34b72; /* cor do ícone no alerta de perigo */ margin-right: 10px; /* espaço extra entre o ícone e o texto */ } .alert-secondary-custom { background-color: #F2EEFF; /* Cor de fundo do alerta */ color: #3217a7; /* Cor do texto */ border: 1px solid #9475f7; /* adicionando borda da mesma cor que o ícone */ padding: 10px; /* adicione padding conforme necessário */ } .alert-secondary-custom .fas { color: #6B48FF; /* Cor dos ícones FontAwesome */ margin-right: 10px; /* Espaço extra entre o ícone e o texto */ } /* ========== FIM DO ESTILO ========= */ </style> <!-- Tabs e conteúdo das guias --> <div class="card"> <ul class="tabs"> <li class="tab col s4"><a href="#tab1">DETALHES FUNCIONAIS</a></li> <li class="tab col s4"><a href="#tab3">FAQ</a></li> </ul> <!-- Tab Content --> <div id="tab1" class="col s12"> <div class="tab-content"> <div style="background-color: #f4f5f7; padding: 10px; margin-left: 50px; margin-right: 50px;"> <section id="section1" style="margin-top: 40px;"> <!-- Tab 70 conteúdo --> <!-- Segundo Card --> <!-- Primeiro Card --> <!-- Primeiro Card --> <div class="card"> <div class="item"> <span class="label"> <table border="1"> <tr> <td><i class="fas fa-tags"></i> <b>Produto:</b></td> <td>Gestão de Clientes</td> </tr> <tr> <td><i class="fas fa-link"></i> <b>Linha de Produto:</b></td> <td>TOTVS CRM</td> </tr> <tr> <td><i class="fas fa-chart-pie"></i> <b>Segmento:</b></td> <td>Cross Segmentos</td> </tr> <tr> <td><i class="fas fa-desktop"></i> <b>Módulo:</b></td> <td>Personalização</td> </tr> <tr> <td><i class="fas fa-globe"></i> <b>Aplicação:</b></td> <td>Web/app móvel</td> </tr> <tr> <td><i class="fas fa-hashtag"></i> <b>Identificador:</b></td> <td> ME260520220840</td> </tr> </table> </span> </div> </div> <br> <h2 class="custom-heading"> <i class="fa-solid fa-eye"></i>    VISÃO GERAL </h2> <p class="justificado"> Agora, na tela de cadastro, você tem a liberdade de personalizar a visibilidade e a editabilidade dos campos de acordo com critérios específicos, além de poder validar as informações inseridas através de regras definidas. Este aperfeiçoamento representa uma gestão de dados mais inteligente e eficiente, alinhando-se perfeitamente às necessidades e preferências da sua empresa. </p> <br> <h2 class="custom-heading"> <i class="fa-solid fa-rocket"></i>    OBJETIVO </h2> <p class="justificado"> O principal objetivo desta atualização é otimizar a gestão de clientes, proporcionando uma tela mais adaptável e dinâmica que responde de forma mais alinhada às suas necessidades específicas. </p> <br> <!-- ... (seu conteúdo existente) ... --> <h2 class="custom-heading"> <i class="fa-solid fa-book"></i>   ANTES DE COMEÇAR </h2> <h3>Requisitos</h3> <p>Para aproveitar ao máximo este novo recurso, recomendamos que esteja familiarizado com o módulo Personalização.</p> <br> <h3> Atributos padrões do formulário</h3> <p>A maioria dos atributos do formulário são suportados para as funções, porém, existem algumas exceções que foram detalhadas logo abaixo. </p> <br> <table class="striped custom-grey"> <thead> <tr> <th>Nome Técnico</th> <th>Nome em Tela</th> <th>Tipo do Dado</th> <th>É Suportado?</th> </tr> <tr> <td>active</td> <td>Ativo</td> <td>Booleano</td> <td>Sim</td> </tr> <tr> <td>name</td> <td>Nome</td> <td>Texto</td> <td>Sim</td> </tr> <tr> <td>tradingName</td> <td>Apelido/Nome Fantasia</td> <td>Texto</td> <td>Sim</td> </tr> <tr> <td>code</td> <td>Código</td> <td>Texto</td> <td>Sim</td> </tr> <tr> <td>customerPersonType</td> <td>Tipo de Pessoa</td> <td>Relacionamento</td> <td>Sim</td> </tr> <tr> <td>birthday</td> <td>Data de Nascimento/Data de Fundação</td> <td>Data</td> <td>Sim</td> </tr> <tr> <td>parentAccount</td> <td>Conta Pai</td> <td>Relacionamento</td> <td>Sim</td> </tr> <tr> <td>contacts</td> <td>Contatos</td> <td>Relacionamento Multivalorado</td> <td>Não</td> </tr> <tr> <td>professionalId</td> <td>Responsável</td> <td>Relacionamento</td> <td>Sim</td> </tr> <tr> <td>phones</td> <td>Telefone</td> <td>Indefinido</td> <td>Não</td> </tr> <tr> <td>emails</td> <td>E-mail</td> <td>Indefinido</td> <td>Não</td> </tr> <tr> <td>leadSituation</td> <td>Tipo</td> <td>Relacionamento</td> <td>Sim</td> </tr> <tr> <td>leadOrigin</td> <td>Origem</td> <td>Relacionamento</td> <td>Sim</td> </tr> <tr> <td>location</td> <td>Ramos de Atividade</td> <td>Relacionamento Multivalorado</td> <td>Não</td> </tr> <tr> <td>customerGroups</td> <td>Grupos</td> <td>Relacionamento Multivalorado</td> <td>Não</td> </tr> <tr> <td>customerClassification</td> <td>Classificação</td> <td>Relacionamento</td> <td>Sim</td> </tr> <tr> <td>companies</td> <td>Empresas</td> <td>Relacionamento Multivalorado</td> <td>Não</td> </tr> <tr> <td>note</td> <td>Observação</td> <td>Texto</td> <td>Sim</td> </tr> <tr> <td>addresses</td> <td>Endereços</td> <td>Indefinido</td> <td>Não</td> </tr> <tr> <td>facebook</td> <td>Facebook</td> <td>Texto</td> <td>Sim</td> </tr> <tr> <td>instagram</td> <td>Instagram</td> <td>Texto</td> <td>Sim</td> </tr> <tr> <td>twitter</td> <td>Twitter</td> <td>Texto</td> <td>Sim</td> </tr> <tr> <td>linkedin</td> <td>LinkedIn</td> <td>Texto</td> <td>Sim</td> </tr> <tr> <td>website</td> <td>Website</td> <td>Texto</td> <td>Sim</td> </tr> </table> <br> <h3>Atributos personalizados</h3> <p>Antes de começar a construir regras utilizando atributos personalizados, é importante conferir se os tipos de atributos selecionados são permitidos. Consulte a lista abaixo para identificar quais tipos de campos são suportados:</p><br> <table class="striped custom-grey"> <thead> <tr> <th>Tipo do Atributo Personalizado</th> <th>É Suportado?</th> </tr> <tr> <td>Booleano</td> <td>Sim</td> </tr> <tr> <td>Fórmula</td> <td>Não</td> </tr> <tr> <td>Indefinido</td> <td>Não</td> </tr> <tr> <td>Lista de Opções</td> <td>Não</td> </tr> <tr> <td>Número</td> <td>Sim</td> </tr> <tr> <td>Relacionamento</td> <td>Sim *</td> </tr> <tr> <td>Relacionamento Remoto</td> <td>Não</td> </tr> <tr> <td>SubObjeto</td> <td>Não **</td> </tr> <tr> <td>Texto</td> <td>Sim</td> </tr> </table> <br> <div class="alert custom-alert-warning" role="alert" style="padding-left: 20px;"> <i class="fas fa-info-circle"></i> Os campos de relacionamento multivalorados não são suportados no momento e é obrigatório ter ao menos um campo configurado para exibição. A criação de subobjetos em objetos padrões não está disponível atualmente. </div> </section> <section id="section2" style="margin-top: 40px;"> <h2 class="custom-heading"><i class="fa-solid fa-star"></i>  DETALHES FUNCIONAIS</h2> <h3>Funções </h3> <ol> <li> <p><b>Regras de Ocultação e Edição Condicional</b>:</p> <ul class="browser-default"> <li>Habilita a definição de critérios específicos para a exibição ou ocultação de campos na tela, proporcionando uma visão mais focada e relevante. </li> </ul> </li> <li> <p><b>Validação de Campos de Cadastro</b>:</p> <ul class="browser-default"> <li>Assegura que os dados inseridos estejam corretos e consistentes, minimizando erros e otimizando processos subsequentes. </li> </ul> </li> <li> <p><b>Opção de Cadastro de Mensagem Condicional</b>:</p> <ul class="browser-default"> <li>Permite o registro de mensagens customizadas que serão apresentadas quando condições atribuídas forem atendidas ou não, auxiliando na orientação e notificação aos usuários durante o processo de cadastro ou edição de informações de cliente.</li> </ol> </section> <section id="section3" style="margin-top: 40px;"> <h2 class="custom-heading"><i class="fa-solid fa-shoe-prints"></i>  COMO USAR?</h2> <h3> Passo a Passo</h3> <p><b>Para utilizar a regra de exibição/edição condicional:</b> </p> <br> <ol> <li> <p> <b>Inicie a Personalização</b>: Acesse o módulo de personalização. </p> </li> <li> <p> <b>Acessando Funcionalidades</b>: Vá até a seção "Funcionalidades". </p> </li> <li> <p> <b>Iniciando a Edição</b>: Clique no ícone de lápis para editar. </p> </li> <li> <p> <b>Editando o Formulário</b>: No card do formulário, clique em 'editar' e selecione o campo ou a seção que deseja modificar. </p> </li> <li> <p> <b>Definindo Configurações Dinâmicas</b>: Escolha a opção "dinâmico" para ajustar as configurações de visibilidade ou edição. </p> </li> <li> <p> <b>Adicionando Regras</b>: Clique em 'adicionar regra' e descreva a regra que deseja implementar no campo 'Descrição'. </p> </li> <li> <p> <b>Criando a Expressão Lógica</b>: No campo "Expressão", estabeleça as condições para que as ações sejam executadas. </p> </li> <li> <p> <b>Estabelecendo Ações</b>: Em 'Ações', selecione a ação desejada (como "ocultar" ou "exibir") e identifique o elemento alvo. </p> </li> <li> <p> <b>Finalizando</b>: Adicione mais ações se necessário e depois clique em 'salvar' para finalizar as alterações. </p> </li> </ol> <br> <p> <video autoplay loop muted style="width: 100%; height: auto; max-width: 100%; display: block;"> <source src="https://totvscrm.com/wp-content/uploads/2023/09/condicionalcliente.mp4" type="video/mp4"> </video> </p> <br /> <h3>Regra de Validação no formulário "Clientes"</h3> <ol> <li> <p><b>Início da Configuração</b>:</p> <ul> <li>Abra o módulo de objetos e selecione "Customers".</li> </ul> </li> <li> <p><b>Edição</b>:</p> <ul> <li>Clique no ícone de lápis para iniciar a edição.</li> </ul> </li> <li> <p><b>Acessando as Regras</b>:</p> <ul> <li>Na aba "REGRAS", clique em "Adicionar".</li> <li> Escolha "Regra Avançada" para configurar usando expressões complexas. </li> </ul> </li> <li> <p><b>Configuração Detalhada da Regra</b>:</p> <ul> <li>No campo "Descrição", explique brevemente a regra.</li> <li> Utilize "Observação" para fornecer detalhes adicionais sobre a regra. </li> </ul> </li> <li> <p><b>Estabelecendo a Expressão</b>:</p> <ul> <li> No campo "Expressão", determine as condições necessárias para ativar as ações programadas. </li> </ul> </li> <li> <p><b>Configuração da Mensagem de Alerta</b>:</p> <ul> <li> Selecione quando a mensagem deve ser mostrada: se as condições foram atendidas ou não. </li> <li> Escreva o texto que será exibido na tela no campo de texto correspondente. </li> <li> Especifique onde a mensagem será exibida: no topo da tela ou abaixo do campo correspondente. </li> </ul> </li> <li> <p><b>Finalização</b>:</p> <ul> <li> Após configurar todos os detalhes, clique em "Salvar" para aplicar as alterações feitas. </li> </ul> </li> </ol> <br /> <p> <video autoplay loop muted style="width: 100%; height: auto; max-width: 100%; display: block;"> <source src="https://totvscrm.com/wp-content/uploads/2023/09/validacaocampo.mp4" type="video/mp4"> </video> </p> </section> <section id="section4" style="margin-top: 40px;"> <h2 class="custom-heading"><i class="fa-solid fa-signs-post"></i>  EXEMPLO PRÁTICO</h2> <h3>Caso de uso</h3> <p> <b>Cenário:</b> <p>Maria lida diariamente com uma grande quantidade de dados de clientes, buscando constante otimização e fiabilidade na base de dados. </p> <br> <b>Desafio Antigo:</b> <p>Antes da atualização do TOTVS CRM, Maria enfrentava desafios na gestão de dados. O processo de entrada de dados era inconsistente, com falta de validação de preenchimento, o que levava a erros. A incapacidade de personalizar a visibilidade e editabilidade dos campos do formulário também limitava a eficiência do processo, forçando a equipe a navegar através de campos irrelevantes e desperdiçar tempo precioso. </p> <br> <b>Solução Atualizada:</b> <p>Agora, eles podem não apenas personalizar a visibilidade e a editabilidade dos campos, mas também implementar regras condicionais que validam o preenchimento dos campos no momento do preenchimento do formulário, garantindo dados mais precisos e confiáveis.</p> <br> </p> </section> </div> <!-- Tab 30 fim --> <!-- Tab 30 fim --> </div> </div> <div id="tab3" class="col s12"> <div class="tab-content"> <div style="background-color: #f4f5f7; padding: 20px; margin-left: 50px; margin-right: 50px;"> <!-- Primeira coluna do conteúdo da guia 2 --> <div class="container"> <h2 class="custom-heading"><i class="fa-solid fa-circle-question"></i> PERGUNTAS FREQUENTES</h2> <ul class="collapsible"> <li> <div class="collapsible-header"><i class="material-icons">question_answer</i>Existe uma limitação no número de regras condicionais que podem ser criadas?</div> <div class="collapsible-body"><span>Não, no entanto, é importante notar que a criação de um grande número de regras pode complicar a gestão e potencialmente desacelerar o sistema. </span></div> </li> <li> <div class="collapsible-header"><i class="material-icons">question_answer</i>Os campos que foram ocultados através da personalização são completamente removidos do banco de dados?</div> <div class="collapsible-body"><span>Não, não são removidos do banco de dados; eles são apenas ocultados da interface do usuário para simplificar a entrada de dados e a visualização. </span></div> </li> <li> <div class="collapsible-header"><i class="material-icons">question_answer</i>Quais são os operadores disponíveis para usar em uma expressão?</div> <div class="collapsible-body"><span><h3>Operadores Matemáticos:</h3> <br> <ol> <li><b>"+" (Soma)</b></li> <li><b>"-" (Subtração)</b></li> <li><b>"*" (Multiplicação)</b></li> <li><b>"/" (Divisão)</b></li> <li> <b>"()" (Parênteses) -</b> Usado para definir a ordem de operações em uma expressão. </li> </ol> <br> <h3>Operadores Lógicos:</h3> <br> <ol> <li> <b>"AND" (E) -</b> Retorna verdadeiro se ambas as expressões forem verdadeiras. </li> <li> <b>"OR" (OU) -</b> Retorna verdadeiro se pelo menos uma das expressões for verdadeira. </li> <li> <b>"!=" (Diferente) -</b> Retorna verdadeiro se os valores comparados forem diferentes. </li> <li> <b>"==" (Igual) -</b> Retorna verdadeiro se os valores comparados forem iguais. </li> <li> <b>">" (Maior que) -</b> Retorna verdadeiro se o valor à esquerda for maior que o valor à direita. </li> <li> <b>"<" (Menor que) -</b> Retorna verdadeiro se o valor à esquerda for menor que o valor à direita. </li> <li> <b>">=" (Maior ou igual a) -</b> Retorna verdadeiro se o valor à esquerda for maior ou igual ao valor à direita. </li> <li> <b>"<=" (Menor ou igual a) -</b> Retorna verdadeiro se o valor à esquerda for menor ou igual ao valor à direita. </li> </ol> <br> <h3>Funções de Utilidade:</h3> <br> <ol> <li> <b>"IN" -</b> Verifica se um valor está presente em uma lista de valores. </li> <li> <b>"IS_EMPTY" -</b> Verifica se um valor está vazio, e retorna verdadeiro se estiver vazio. </li> <li><b>"IS_NUMBER" -</b> Verifica se um valor é um número.</li> <li> <b>"COALESCE" -</b> Retorna o primeiro valor não nulo em uma lista de valores (essa função não foi detalhada no seu texto, mas é uma explicação geral do que ela faz). </li> </ol> </span></div> </li> <!-- Adicione mais perguntas e respostas aqui conforme necessário --> </ul> </div> <!-- Primeira coluna do conteúdo da guia 2 --> </div> </div> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script> <script> // Inicialização das tabs document.addEventListener("DOMContentLoaded", function () { var tabs = document.querySelectorAll(".tabs"); M.Tabs.init(tabs); }); </script> <script> const items = document.querySelectorAll("#indice li"); items.forEach(item => { item.addEventListener('click', (e) => { const targetId = e.target.getAttribute('data-target'); const targetElement = document.getElementById(targetId); window.scrollTo({ top: targetElement.offsetTop - 10, behavior: "smooth" }); }); }); </script> <script src="https://kit.fontawesome.com/c97d4c197a.js" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min.js"></script> <script>hljs.highlightAll();</script> <script src="scripts.js"></script> <script> document.addEventListener('DOMContentLoaded', function() { var elems = document.querySelectorAll('.collapsible'); var instances = M.Collapsible.init(elems); }); </script> <!-- ... (conteudo video) ... --> <script src="https://www.youtube.com/iframe_api"></script> <script> var player; function onYouTubeIframeAPIReady() { player = new YT.Player('player', { height: '315', width: '560', videoId: 'FvsuBOvyyro', playerVars: { start: 1238, // 20:38 em segundos end: 1356 // 22:36 em segundos } }); } </script> |
...