[Resolvido] Cor nas grid quando tiver nomes no setor

Bom dia!, como coloco cor na linha da grid quando estiver o nome exemplo.

no SETOR se aparecer NAVIDECK todos com este nome tem que aparecer com uma cor tipo amarelo, se aparecer MUD/LAB a cor tem que ser vermelho e assim por diante.

ou

Se eu entendi bem, tem esta outra solução também:

No onRecord da grid, coloque:

if(!empty({cd_pedido})) 
{
	sc_field_style({idorcamentos}, "#2fe2ff");
	sc_field_style({data_emissao}, "#2fe2ff");
	sc_field_style({cliente}, "#2fe2ff");
	sc_field_style({total}, "#2fe2ff");
	sc_field_style({desconto}, "#2fe2ff");
	sc_field_style({total_geral}, "#2fe2ff");
	sc_field_style({cd_vendedor}, "#2fe2ff");
	sc_field_style({cd_pedido}, "#2fe2ff");
}

Mude aí para os teus campos e execute.

1 Curtida


Exemplo ai
Se tivesse outro nome abaixo com o setor NAVDECK02 ele teria que ficar vermelho entendeu, no caso todos com estes nomes e assim por diante, mais na questão do seu código não entendi bem o cd_pedido e os abaixos idorcamentos, data_emissao etc…

O exemplo do @Kleyber, ele pinta cada celula da linha, por isso é aplicada a cor em cada campo exibido da consulta.

2 Curtidas

Certo. Acho que você não leu a parte final do meu post quando digo: Mude aí para os teus campos e execute.

Ou seja, coloque no IF a tua condição e mude os campos do meu exemplo para os campos da tua GRID.

2 Curtidas

Não funcionou

Esotu tentando desta forma aqui…

$seq = sc_seq_register;

if({setor} == NAVIDECK){//NAVIDECK
$c_bg = ‘#fdf4d2’;
$c_cor = ‘#b92d2d’;
}elseif({setor} == EXEMPLO2){//NOME TESTE
$c_bg = ‘#73aaff’;
$c_cor = ‘#fff’;
}elseif({setor} == EXEMPLO 3){//Em execução
$c_bg = ‘#60b060’;
$c_cor = ‘#fff’;
}

if ($c_bg) {
echo “#SC_ancor$seq {background-color: $c_bg; color: $c_cor;}”;
}

Bem, o que tentaste e não funcionou não foi a dica que passei. Enfim, vá em frente com a que estás testando. Sucesso ai.

1 Curtida

O que estou tentando fazer é, o pessoal vai fazer um cadastro neste cadastro quando faço a consulta ele tem que ficar em cores cada linha da grid, se no setor aparecer o nome TESTE01 - VERMELHO para toda a linha se aparecer TESTE02 = AMARELHO para toda linha

A questão não pe o que funcionou ou não e sim um exemplo melhor explicado seria uma boa, sou novo no SC e ainda n~çao aprendi ainda bem.
Mais agradeço pelo seu tempo.

Voce declarou NAVIDECK como constante?

para fazer esse if({setor} == NAVIDECK funcionar somente declarando NAVIDECK como constante.

Se não, use if({setor} == 'NAVIDECK'

E por favor, cole seus códigos entre as tags [code] e [/code].para facilitar a leitura de código.
Vimemos repetindo isso aqui.

2 Curtidas

Você usa a ferramenta desde 2014, não?

[ $seq = sc_seq_register;

if({setor} == NAVIDECK){//NAVIDECK
$c_bg = ‘#fdf4d2’;
$c_cor = ‘#b92d2d’;
}elseif({setor} == EXEMPLO2){//NOME TESTE
$c_bg = ‘#73aaff’;
$c_cor = ‘#fff’;
}elseif({setor} == EXEMPLO 3){//Em execução
$c_bg = ‘#60b060’;
$c_cor = ‘#fff’;
}

if ($c_bg) {
echo “#SC_ancor$seq {background-color: $c_bg; color: $c_cor;}”;
}
[/code]

Sempre estou tentando utilizar e aprender, mais a empresa me manda fazer cursos de infra direto pois trabalho embarcado.

Quando é questão código não sou muito bom na realidade…

$seq = sc_seq_register;
$_setor = [
    'NAVIDECK'=>['YELLOW', 'BLACK'],
    'MUD/LAB' =>['RED'   , 'WHITE']
];

if (array_key_exists({setor}", $_setor)) {
   echo "#SC_ancor{$seq} {background-color: {$_setor[{setor}][0]}; color: {$_setor[{setor}][1]};}";
}
1 Curtida

Coloquei no Onrecord e deu erro… Parse error: syntax error, unexpected ‘}’, expecting ‘]’ in C:\Program Files\NetMake\v9-php73\wwwroot\scriptcase\app\Inventario_Ocyan\grid_tbl_inventario\grid_tbl_inventario_grid.class.php on line 2975

 echo "#SC_ancor{$seq} {background-color: {$_setor[{setor}][0]}; color: {$_setor[{setor}][1]};}";

Obs.: Eu não testei o código.

Uma correção:

$seq = sc_seq_register;
$_setor = [
    'NAVIDECK'=>['YELLOW', 'BLACK'],
    'MUD/LAB' =>['RED'   , 'WHITE']
];

if (array_key_exists({setor}, $_setor)) { //Obsoleto a partir do PHP 8.
//if (isset($_setor[{setor}])) {  //Para uso no PHP 8.
   echo "<style>#SC_ancor{$seq} {background-color: {$_setor[{setor}][0]}; color: {$_setor[{setor}][1]};}</style>";
}

Farei o teste assim que retornar do médico

Eu uso este aqui

image