[RESOLVIDO] Como alterar a cor de fundo de um campo de um formulário?

Olá, boa tarde!

Existe alguma forma de alterar a cor do fundo de um campo em um formulário do tipo grid editavel?

Em consultas, sei que o Scriptcase oferece duas macros para isso, a SC_FIELD_COLOR e a SC_FIELD_STYLE, mas ambas não funcionam com formulários.

Alguém conhece uma forma de fazer isso em grids?

Preciso mudar a cor do fundo de um campo após o OnValidate caso o valor inserido no campo não atenda determinados critérios.

teste:

Num evento javascript coloca:

document.F1.valor_01.style.color="#00ff00";

document.F1.descricao.style.backgroundColor="#00ff00";

Sabendo que: “valor_01” e “descricao” são os nomes do campo.

  • É necessário editar o código para o seu perfeito funcionamento.

Não funcionou… Criei um botão javascript só pra testar o código e não funcionou. Testei em alguns eventos com echo no JS e também não.

Fiz mais alguns testes aqui e nada… Eu consegui achar o id de uma linha individual do formulário e então mudar via DOM, mas isso é muito engessado… preciso de algo mais dinâmico, tipo um OnRecord.

bom dia… preciso muito de ajuda nesse topico
Tenho um FORM que preciso mudar a cor de fundo de um campo totalizador pra identificar a diferença de soma e estou tentando usar o sc_field_color e da erro:

Fatal error: Call to undefined function sc_field_color() in C:\Program Files (x86)\NetMake\v81\wwwroot\scriptcase\app\CashSystem\form_tbl_acordo_cadastra\form_tbl_acordo_cadastra_apl.php on line 7730

estou usando isso:

$var_diferenca = ({aco_valor_atual} - {aco_valor_desconto}) - {aco_valor_negociado};
if ($var_diferenca == 0)
{
sc_field_color (“aco_valor_negociado”, “”);
}
else
{
sc_field_color (“aco_valor_negociado”, “#33FF66”);
}

tambem ja tentei assim:

if ($var_diferenca = 0)
{
sc_field_color (“aco_valor_negociado”, “”);
}
else
{
sc_field_color (“aco_valor_negociado”, “#33FF66”);
}

alguem poderia me ajudar??

Djalma bom dia,

Tanto o sc_field_color quanto o sc_field_style só funcionam em consultas. Para fazer isso no form, podes alterar diretamente o CSS do campo que queres colocar a cor, ou então inspecionar o elemento e colocar via javascript a cor que desejas.

Obrigado Kleber
Mas teria como fazer isso dinamicamente?

Acho que somente com Javascript.

poxa Kleyber muito obrigado mais uma vez…

querido voce saberia me orientar de como fazer… sou muito novato em SC e a única coisa que preciso é de uma dica voce teria um exemplo qualquer que eu pudesse seguir???

mais uma vez muito obrigado…

Djalma bom dia,

Assista o video do link: http://www.scriptcase.com.br/forum/index.php/topic,11841.msg61978.html#msg61978 e lá a Camila mostra como inspecionar um elemento e fazer as modificações necessárias, colocando no teu código.

Resolvido…
obrigado pelo video Kleyber… usando ele eu adaptei meu codigo assim…
criei um metodo e coloquei no: load, updade, delete

// Calcula Diferença
$var_dif = 0;
$var_dif = {aco_valor_negociado}-{aco_valor_atual};

// mudar a cor de fundo dinamicamente do form
if (empty($var_dif))
{
// coloca a cor verde
?>

.css_aco_valor_negociado_line
{
background-color:#50B33C ;
text-align: left;
}

<?php
}
else
{
if ($var_dif > 0)
{
// coloca a cor azul
?>

.css_aco_valor_negociado_line
{
background-color:#29D5DB ;
text-align: left;
}

<?php
}
else
{
// coloca a cor vermelha
?>

.css_aco_valor_negociado_line
{
background-color:#F23B3B ;
text-align: left;
}

<?php
}
}

Muito bom, Djalma. Fico feliz que tenha conseguido o que queria. Agora é só colocar RESOLVIDO no assunto do tópico no teu primeiro post, assim outros que tiverem o mesmo problema podem ver a solução dada.

Kleyber esse topico não é meu… eu aproveitei o assunto pra fazer minhas perguntas mais na verdade não sei como criar um TÓPICO meu… e na verdade tenho vários não vi onde esta essa parte onde crio um tópico ???

rsrs verdade. Bom para criar um tópico, na tela anterior tem um botão chamado NOVO TÓPICO. Clique nele e coloque o assunto e o teu post.

Clique em Inicio
Selecione o assunto
clique em Novo Tópico.

Bom dia tentei acessar o link acima e ele está quebrado, poderiam passar o correto!

Então Daniel,

se for um formulario tipo Consulta ( grid ) vc pode tentar essa que esta bem documentada:
http://www.scriptcase.com.br/forum/index.php?topic=12557.0

se form um formulário tipo Detalhe ( form ) tente isso:
https://www.youtube.com/watch?v=vyXdwQ84Wco

uma dica:
se inscreva no canal youtube do scriptcase, estude bem as macros e pesquisando aqui no forum vc vai encontrar muitas dicas.

boa sorte…