Lançado Adianti Framework 7.6!
Clique aqui para saber mais
TDBCombo x setEditable Não estou conseguindo 'travar' o combo para edição, mesmo passando 'false' para o método setEditable de TDBCombo. O campo fica 'cinza' como se estivesse travado, mas ainda consigo selecionar opções e as mudanças estão sendo gravadas na base de dados. Alguém tem uma ideia do que posso fazer? Abraços!!!...
AN
TDBCombo x setEditable  
Fechado
Não estou conseguindo 'travar' o combo para edição,
mesmo passando 'false' para o método setEditable de TDBCombo.
O campo fica 'cinza' como se estivesse travado, mas ainda consigo selecionar opções e as mudanças estão sendo gravadas na base de dados.

Alguém tem uma ideia do que posso fazer?

Abraços!!!

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (6)


JN

Boa noite Ademilson,

Não se aplica para vc, mas se é para alteração e vc não quer que seja alterado o valor do campo retorna ele com TEntry, setEditable false. Se o campo estiver referenciado por ID, instancia o objeto e retorna a descrição do campo, ou trabalha na classe model com uma função para retornar somente a descrição do campo, passei por uma situação parecida e fiz desta forma.

Abraço.
JN

*Não sei se aplica para vc...
AN

Ola João,
Realmente não se aplica, mas consegui resolver:

Eu precisava travar o combo de aprovação de um serviço para o perfil de operador ou técnico. Pois quem aprova o serviço é o Cliente que abriu a OS. Assim o perfil operador ou o técnico pode apenas visualizar se o combo esta marcado sim ou não, porém não pode alterar esta informação.

Então fiz assim:
TPage::include_js('app/lib/include/jfunctions.js');


$combo->setProperty('id', 'os_aval');


e dentro de jfunctions.js

$("#os_aval").prop("disabled",true);


Obrigado pelas dicas :D

abraços.


PD

Olá amigos,

Desculpe a demora na resposta, mas no html a combo tem a propriedade 'disabled' que pode ser ligada pelo método setProperty() da classe TCombo. A utilização desse método vai desabilitar o campo, que não vai mais nem ir no POST. Mas acho que é esse o comportamento desejado nesse caso, correto?

  1. <?php
  2.         $combo = new TCombo('combo');
  3.         $combo->setValue('b'); // define o índice do elemento ativo
  4.         $combo->setProperty('disabled''1'); // desabilita a combo
  5. ?>


abraços,
Pablo
KA

Boa Pablo,
ótima solução, confesso que não tinha nem passado pela minha cabeça passar 'disabled' direto no setProperty. Assim evito a volta enorme que dei para solucionar o problema e deixa o código claro e elegante.

Obrigado mais uma vez pelo apoio!
AN

Ops! login errado (sobrinho). hehe desculpem pessoal.