Sei que tem a macro para a troca do nome do campo.
Tem alguma macro ou alguma forma de saber os nomes dos campos.
Sei que tem a macro para a troca do nome do campo.
Tem alguma macro ou alguma forma de saber os nomes dos campos.
Poderia explicar melhor sua necessidade, visto que, os nomes dos campos normalmente correspondem a campos na sua tabela de banco de dados. Se puder explicar melhor talvez possamos ajudar.
Abraço!
tem macro para troca do label do campo, não para o nome do mesmo.
ops´. isso mesmo label.
queria pegar o nome do campo para comparar com select que será retornada de outra tabela, neste vira o nome dos campos exixtentes nela e seu valor S/N.
com isso vou desativar ou ativar o campo no form.
com jquery da para pegar sim, mas existem muitos campos internos do sc, que virão juntos tb. Ideal aí é vc ter uma tabela que guarde o nome da app e os campos que ela usa.
Eu criei uma função ± assim…
$sql_campos = ‘SHOW columns FROM sua-tabela’; // Mysql
ou $sql_campos = ‘SELECT column_name FROM information_schema.columns WHERE table_name = sua-tabela order by ordinal_position’; // Postgres
$sql_verregistros = “SELECT * FROM sua-tabela WHERE sua-chave = seu-registro”;
sc_lookup(ver_registros,$sql_verregistros);
sc_lookup(ver_campos,$sql_campos);
$i=0;
foreach({ver_campos} as $campo)
{
echo $this->Ini->Nm_lang[‘lang_’.sua-tabela.‘fld’.$campo[0]].’ - ‘; // Label do Campo
echo {ver_registros[0][$i]}.’
’; // Valor do campo
$i++;
}
Cabe lembrar que sempre trabalho com as langs.
Espero que ajude.
T+
vlw jovitomelo.
Vou testar aqui.
Mas de inicio to fazendo assim
sc_lookup(dsCampos,“SHOW COLUMNS FROM imoveis”);
$cont = count({dsCampos});
sc_lookup(dsCamposCad,“SELECT nome_campo,descr_usuario
FROM imoveis_laudos_campos
WHERE ativo=‘S’”);
$qtd =count({dsCamposCad});
for($x=0;$x<$qtd;$x++){
$nome_campo = {dsCamposCad[$x][0]};
$NomeCampo ='{'.$nome_campo.'}';
$NomeCampo = str_replace(" ","",$NomeCampo);
$nome_usuario = {dsCamposCad[$x][1]};
for($y=0;$y<$cont;$y++){
$campo = {dsCampos[$y][0]};
$campoForm ='{'.$campo.'}';
$campoForm = str_replace(" ","",$campoForm);
// if($campo == $nome_campo ){
if(strcasecmp($campo, $nome_campo) == 0){
echo "campoForm ".$campoForm."<br>";
sc_field_display('$campoForm', on);
$y = $cont;
}else{
echo "NomeCampo".$NomeCampo."<br>";
sc_field_display('$NomeCampo', off);
}
}
}
Mas não esta habilitando ou não o campo.
Consegui desta forma.
sc_lookup(dsCampos,“SHOW COLUMNS FROM imoveis”);
$cont = count({dsCampos});
for($x=0;$x<$cont;$x++){
$campo = {dsCampos[$x][0]};
$this->nmgp_cmp_hidden[$campo] = ‘off’;
}
sc_lookup(dsCamposCad,“SELECT nome_campo,descr_usuario
FROM imoveis_laudos_campos
WHERE ativo=‘S’”);
$qtd =count({dsCamposCad});
for($x=0;$x<$qtd;$x++){
$nome_campo = {dsCamposCad[$x][0]};
$nome_usuario = {dsCamposCad[$x][1]};
for($y=0;$y<$cont;$y++){
$campo = {dsCampos[$y][0]};
if(strcasecmp($campo, $nome_campo) == 0){
$this->nmgp_cmp_hidden[$campo] = 'on';
$y = $cont;
}
}
}