CAMPO OBRIGÁTORIO

Por Favor alguem poderia me dar uma LUZ!!!

Como faço para setar um campo Obrigatorio em modo de execução. Ex.: se o usuario clicar em pessoa juridica desabilitar o campo RG como obrigatorio, se o usuario clicar em pessoa Fisica habilitar o campo RG como Obrigatorio.

Obrigado pela Atenção

Dorival

É simples:

Na verdade o que você deve fazer não é tornar o campo obrigatório ou não, porque pessoas jurídicas não possuem RG.

Se for pessoa jurídica o campo RG não deverá aparecer para digitação na tela e se for física, deverá.

No lookup de edição do campó {tipo_de_pressoa}, voce marca a opção “Recarregar formulário após alteração do valor”.

Depois, num evento associado à carga do formulário você verifica:
if ({tipo_de_pessoa} == “F”)
{
sc_field_display({campo_rg},on);
}
else
{
sc_field_display({campo_rg},off);
}

Resolvido?

Nãoprecisa marcar como recarregar formulario.

Precisa marcar sim.

No caso de uma inclusão, ainda não saberemos o tipo de pessoa (se física ou jurídica) e o campo RG não estará sendo exibido na tela.

Quando for escolhida a opção (tipo de pessoa), o form deve ser recarregado para que seja feita a verificação e o campo RG seja exibido ou não.

Se não for indicado que deve ser feita a recarga do form e o tipo de pessoa for ‘Física’, o campo RG não será exibido para digitação.

Se estamos falando de Scriptcase Ajax, no evento onchange aplicar a sc_field_display, conforme o tipo de pessoa, ou pelo tamanho do campo CNPJCPF (o que mais indico, se for usado um campo só para a informação).

Volto a afirmar: não há necessidade de recarga.

Abraços.

Caro Haroldo:

Nosso amigo não menciona a versão do ScriptCase que está usando, logo não podemos ter certeza que estamos falando de ScriptCase Ajax.

Como estamos num forum ScriptCase - e não na Associação ScriptCase Ajax - , que trata uma ferramenta e não uma versão, temos que pensar que todo tipo de usuário pode estar lendo o que postamos.

Por isso, como temos usuários trabalhando ainda na V2, prefiro ser o mais didático possível, esclarecendo as dúvidas para todos.

Se o usuário for de uma versão com recursos do Ajax, espero que conheça as novas funcionalidades da versão e saiba aplicá-las.

Seria importante que, ao postar uma dúvida, sempre fosse mencionada a versão utilizada, mas quase nunca é.
Como fica difícil dar uma resposta para cada versão, eu prefiro dar uma resposta que funcione em todas elas a dar uma resposta que gere mais dúvidas ainda.

Caro bdinardi,

Nosso colega Dorival, faz parte como membro da associação Scripcase Ajax, e postou a mesma dúvida lá, assim sendo, acredito eu, posso estar errado, que o mesmo possua uma versão ajax do Scriptcase, e , em minha última postagem, as primeiras palavras indicam a questão de ser ajax ou não. Quanto a postagem mais didática quer dizer que a sugestão é sempre postar um código que funcione para a versão mais antiga? Discordo, pois outros usuário com versão mais recente podem querer uma solução mais adequada a sua versão.
Então corrijo minha postagem informando aos colegas que ela só funciona para versão Ajax do Scritpcase.

Ok, o importante é que, todos nós estamos aqui com uma finalidade:
aprender cada vez mais, conhecer melhor a ferramenta e ajudar a comunidade de usuários ScriptCase.

E temos no forum e na associação, formas de suprir as deficiências do suporte e da documentação ruim que a ferramenta dispõe.

Precisamos, entretanto, usar de bom senso (o que é bom não só aqui, mas em todas as ocasiões da vida), na hora de postar mensagens ou dar respostas.

Na resposta do Haroldo de 04/04 (“Não precisa marcar como recarregar formulario.”), fica a impressão de que eu falei bobagem, quando na verdade não falei.
Se ele tivesse dado uma explicação a seguir, justificando sua alegação (como acabou fazendo hoje), teria contribuído ainda mais para o enriquecimento do forum, além de evitar essa troca desnecessária de mensagens.

De qualquer forma, ainda acho que estamos todos ganhando com isso.

Embora eu seja um usuário novo no forum, já sou veterano na ferramenta (V2, V3 e agora na V4).
E tenho muitos colegas de trabalho ainda usando a V2 do ScriptCase. Daí vem minha preocupação.

Ao Haroldo, apesar do mal entendido, meus parabéns.
As suas postagens, sem dúvida, contribuíram e contribuem muito para o nosso objetivo comum.

Agradeço muito a colaboração do bdinardi e do Harold, pelas informações postadas, a minha versão do ScriptCase e V3, e minha dúvida a respeito do campo obrigátorio e se existe alguma função pré-definida no ScriptCase para habilitar ou desabilitador um campo marcado com *campo1,*campo2,campo3, na hora da execução do programa, pois em desenvolvimento existe. O sc_field_display({campo_rg},on) conforme o bdinardi mencionou funciona perfeitamente, mas gostaria de estar sempre mostrando o campo na tela, com '’ ou sem, pois o exemplo que citei mencionei só um campo do meu formulario, só que são varias campos que seram obrigatório ou não caso uma condição seja verdadeira, pois o ScriptCase faz as criticas de campo obrigatório muito bem.

Obrigado pela Atenção.

Dorival

Desculpa, não foi minha intenção criticar sua solução, meu primeiro contato com Scriptcase foi logo quando saiu a V3, nunca tive contato com a V2, e como eu sabia que o Dorival usava a V3, nem questionei a versão. Mas fica como sugestão o usuário do forum sempre postar a versão que usa, para que possamos da r a melhor solução possível.

Caro Dorival sua questão foi ou não resolvida?
Vou postar no Fórum um exemplo para fazer o que você precisa, na V3, ok?
Abraços.

Dorival, acredito que nesse caso você deva, conforme a condição, fazer a consistência no submit do form para cada um dos campos obrigatórios:

if (condição_onde_campo_x_seja_obrigatório)
{
if ({campo_x}) == “”
{
sc_erro_mensagem(“Campo_x deve ser informado!”);
sc_erro_exit();
}
}

Evidentemente, esses campos não estarão marcados como obrigatórios na configuração, nem exibirão o asterisco no form, mas o registro não será incluído enquanto eles não forem informados.

Harold obrigado pela atenção, sim o meu problema esta Resolvido, estou criticando campo a campo na opção javascript no evento OnBlur, caso minha condição seja verdadeira.

Obrigado mais uma vez,

Dorival

Prezados,
tratar campo obrigatório como mostraram aqui pra mim está ok, já faço isso.

Mas o que preciso realmente fazer é colocar o asterisco vermelho na frente dos campos que são obrigatórios, sendo que não posso marcar o campo como obrigatório no SC porque mesmo sendo obrigatório eu não posso impedir o usuário de seguir para outro formulário, mesmo que não preencha um campo obrigatório, o asterisco serve mais como m guia do que como algo impeditivo.

No final é que faço uma validação antes de gerar a proposta e ai mando o cara voltar no form e preencher todos os dados obrigatórios.

Bom, alguém tem idéia de como faço isso?

No evento onLoad do formulário

sc_label(“seu_campo”) = “Seu label *”;

Bom dia gferrai. Cara desculpe mas é o terceiro tópico que você copia e cola a mesma questão mesmo que não ter algo relacionado com a questão inicial. Peço que poste apenas uma vez e aguarde a ajuda para centralizar os assuntos corretos.

Uma outra questão bdinardi acredito que não vale a pena ficar postando o que outro membro citou se é a melhor solução. Primeiro devemos postar a melhor solução que no caso é o evento ajax e não recarregar o formulário. O Haroldo postou essa melhor solução e caso se o desenvolvedor não conseguisse aplicar poderíamos sugerir a recarga do form.