duvida com dois select e dois input text

(system) #1

São em quatro campos, pr_id, bi_id (sendo estes dois um select), io_comprimento, io_largura (sendo este dois campos tipo text).

o pr_id carrega o bi_id pelo metodo ajax, ate ai tudo bem.

os campos io_comprimento, io_largura, não fazem parte do fornulario, eles so devem aparecer se o pr_id escolhido não aparecer nenhum bi_id.

exemplo escolhi o produto 1 e ele tem vários bi_id, ai continua o formulário do mesmo jeito, sem aparecer o io_comprimento, io_largura.

Se o produto escolhido não tiver bi_id, os campos io_comprimento, io_largura devem aparecer no formulário.

fiz da seguinte forma, no evento on_refresh coloquei uma função que faz o seguinte.

sc_lookup(itensOrcamento, "SELECT COUNT(*) FROM net_produtosxbitola WHERE (pr_id = '{pr_id}')"); echo {itensOrcamento[0][0]}; if({itensOrcamento[0][0]} == 0){ sc_field_readonly({io_comprimento}, on); sc_field_readonly({io_largura}, on); sc_field_readonly({bi_id}, off); } else { sc_field_readonly({io_comprimento}, off); sc_field_readonly({io_largura}, off); sc_field_readonly({bi_id}, on); }

Quando executo este formulario, não aparecer o que quero continua na mesma, o que pode ser ?

(system) #2

$sql = “SELECT COUNT(*) FROM net_produtosxbitola WHERE (pr_id = ‘{pr_id}’)”;
//echo $sql;
sc_lookup(itensOrcamento, $sql);
echo {itensOrcamento[0][0]};
if({itensOrcamento[0][0]} == 0){
echo 1;
sc_field_display ({io_comprimento}, on);
sc_field_display ({io_largura}, on);
sc_field_display ({bi_id}, off);
} else {
echo 2;
sc_field_display ({bi_id}, on);
sc_field_display ({io_comprimento}, off);
sc_field_display ({io_largura}, off);
}

ele le os echo normais, so as macros que nao estao aparecendo.

os campos {io_comprimento}, {bi_id} e {io_largura}, estao marcados como Campo Escondido e Campo Label como Sim.

esta errado, este metodo esta no onRefresh de um formulario

(Haroldo) #3

ja tentou no evento onload, algumas macros não funcionam em determinados eventos, ou aplicações.

(system) #4

mas eu vi de acordo com o help deles, e la diz que funciona