(Resolvido) Método PHP \ sc_error_message...

Tenho este método em php, com finalidade de verificar o preço digitado, se o mesmo
for menor que preço de venda(da tabela produtos), visualiza assim:
sc_error_message("Preço já definido…: ".{dataset[0][0]});

Caso clicar no botão Novo
até ai funciona, mas o botão Inserir fica livre ai o usuário click nele e grava mesmo assim;

Caso clicar no botão Editar
até ai funciona, mas o botão Editar fica livre ai o usuário click nele e grava mesmo assim.

A sc_error_message, deveria inibir os botões Inserir e Editar.
Como solucionar isso?

Formulário = Grid editável
form_VENDA_ITENS_mob (7.01.0013)

Função dispara Eventos Ajax
precovenda();
Onchange do campo PRECO_VENDA

sc_lookup(dataset, “SELECT preco_venda
FROM Produtos
WHERE codigo = {cod_produto}”);

if ({PRECO_UNIT} < {dataset[0][0]}) {
{PRECO_UNIT} = {dataset[0][0]};
sc_error_message("Preço já definido…: ".{dataset[0][0]});
sc_set_focus(“COD_PRODUTO”);
}

Obrigado ajuda dos amigos,
Leão

Coloque uma mesma validação no onValidate.

Olá Almeida, funcionou perfeitamente, somente um detalhe, na edição, o campo total recebe quantidade * preco_venda

não visualiza o resultado correto, só depois que movimento o registro Pai(principal tipo pedido),
é movimento para frente ou para próximo, ai o resultado fica correto. Exemplo:

Quantidade Preço Total
2 15,00 30,00

Depois faço edição da quantidade
Quantidade Preço Total
3 15,00 30,00

Observe, que permanece o valor de 30,00 onde na verdade deveria mostrar 45,00
depois que movimento o registro pai que voltou ai ele mostra o valor correto.

Como corrigir isso, precisa dar um refri no banco? Como?

Obrigado,
Leão

Terá que fazer a mesma conta no campo; “quantidade” e “preco_venda”.

Quando ocorrer a alteração em qualquer um dos dois campos vai executar a fórmula.

Olá Almeida, na verdade o campo preco_venda estar apenas com label, outra função joga para ele
o preço do cadastro de produtos, nesse caso o usuário não precisa digitar o preço nem modificar.
apenas o campo quantidade é livre. Como resolver?

Obrigado,
Leão

Faça a mesma formula da conta no onValidate.

Olá Almeida, as vezes funciona outras não, resolvi liberar o campo preco_venda, se o usuário infor
mar preço menor que definido, nesse caso não atualiza. Assim funciona.
Obrigado Almeida.

Leão