Mestre / Detalhe - Inserindo registro duplicado

wagnerkuramoto
Thu, 09 Nov 2017 02:03:39 +0000

Olá,

Estou fazendo uma aplicação de vendas onde tenho um campo no formulário principal que faz a leitura do código de barras (TAG) e após ler faço um INSERT no formulário DETALHE que é onde ficam os itens

Fiz um evento ajax onChange para quando o foco sair do campo TAG ele execute o comando abaixo

---- EVENTO AJAX ONCHANGE ----

sc_lookup(busca_tag, “SELECT
refbas,
ref_item,
desc_item,
desc_cor,
tam,
tag
FROM
tab_tag t
WHERE
(tag = '”.{tag}."’)");

sc_lookup(busca_preco, “SELECT
preco
FROM
tabela_preco_itens p
WHERE
(refbas = '”.{busca_tag[0][0]}."’) AND
(ref_item = ‘".{busca_tag[0][1]}."’)");

if(isset({busca_tag[0][0]})){

	$sql_insert = "INSERT INTO vendas_itens(qtde, refbas, ref_item, desc_ref, tam, cor, valor_unit, valor_total, tag, vendas_idvendas)

	VALUES ('1', '".{busca_tag[0][0]}."', '".{busca_tag[0][1]}."', '".{busca_tag[0][2]}."', '".{busca_tag[0][4]}."', '".{busca_tag[0][3]}."', '".{busca_preco[0][0]}."', '".{busca_preco[0][0]}."', '".{busca_tag[0][5]}."', '".{idvendas}."')";

sc_exec_sql($sql_insert);

{tag} = “”;
sc_set_focus(‘tag’);
sc_ajax_javascript (‘refresh_itens1’);

}else{
sc_set_focus(‘tag’);
sc_alert(“TAG não encontrada”);
}

O problema é que quando faço isso ele insere duas vezes o registro na aplicação de itens

Alguém sabe o que pode ser?