Problemas com botão RUN

Bom Dia pessoal, estou tendo problemas com o botão run, tenho ele em uma consulta para que ao selecionar o registro ele quite o titulo do contas a pagar, então no OnRecord do botão RUN eu coloquei o código para dar baixa no titulo, o que ocorre é que ele ta baixando titulo que não foi selecionado,e não é direto é aleatório, as vezes fica 2 ou 3 dias dias sem ocorrer, depois ocorre e ao invés de baixar 3 títulos ele baixa todos os que vem na tela. Alguém já passou por algo parecido e poderia dar uma dica de como resolver?

Obrigado

Agostinho

Posta o codigo da baixa para darmos uma olhada

$obs="";
$sql="";
$obs=“Pagamento “.{dscTipoLancamento}.” Placa “.{placa};
$valorPago=sc_trunc_num({saldo}, 2);
$sql=“insert into movimentotitulo(tipo_lancamento,titulo,cheque,data_movimento,valor,observacao,debito_credito,usuario)VALUES({tipo_lancamento},{id},[cheque],curdate(),”.{saldo}.”,’$obs’,‘D’,’”.[usrl_login]."’)";
sc_exec_sql($sql);

aparentemente não tem nada que poderia dar problema, mas tente colocar uma condição para o insert

$obs="";
$sql="";
$obs="Pagamento “.{dscTipoLancamento}.” Placa ".{placa};
$valorPago=sc_trunc_num({saldo}, 2);

if (!empty(campo_chave)){
$sql=“insert into movimentotitulo(tipo_lancamento,titulo,cheque,data_movimento,valor,observacao,debito_credito,usuario)VALUES({tipo_lancamento},{id},[cheque],curdate(),”.

  {saldo}.",'$obs','D','".[usrl_login]."')";
  sc_exec_sql($sql);

}

é mais para testar mesmo.

Obrigado Fernando pelo retorno, vou colocar e deixar em produção para ver, mas adianto que o campo chave na verde o ID esta vindo normal, porque ele grava na tabela os registros da baixa, o unico detalhe é que ele não foi selecionado.

Até o presente momento o problema persiste, ja estou na versão 7.00.0017 e o botão run simplesmente não executa nada, peguei uma outra consulta simples, coloquei o botão run nela, montei o SQL e mandei dar display, ele mostra em branco, como se não tivesse nada. o conteudo do botão segue abaixo
$delete_table = “tcaixa”; // Table name
$delete_where = "codigo = ".$codCaixa; // Where clause

// Delete record
$delete_sql = 'DELETE FROM ’ . $delete_table
. ’ WHERE ’ . $delete_where;
sc_exec_sql($delete_sql);

Detalhe, a aplicação consulta ja existia, apenas foi inserido o botão.

Se alguem souber como contornar isto, agradeço

Agostinho

O Botão RUN possui dois eventos em ual vc colocou código?

Colocou em modo debug?

no OnRecord, sim, coloquei, nao aparece nada…

adicione o código completo da onrecord aqui.

é o que estava na primeira mensagem, nao alterei nada, segue ele novamente

$delete_table = “tcaixa”; // Table name
$delete_where = "codigo = ".$codCaixa; // Where clause

// Delete record
$delete_sql = 'DELETE FROM ’ . $delete_table
. ’ WHERE ’ . $delete_where;
sc_exec_sql($delete_sql);

Você não alimenta $codCaixa.

Aconselho usar o c_commit_trans() na onfinish.

Eu costumo na onrecord guardar os ids dos registros que serão processados, e na onfinish executar o código.

Tentei assim com begin e commit e não deu certo tambem, não da erro, nao faz o delete. Tenho em outra consulta que funcionava bem um update, esse tambem não executa mais.

Agostinho

Descrobri o problema, o botão RUN não executa quando vc tem uma subconsulta/detalhe na consulta, criei um novo formulario e fui adicionando as funcionalidades que eu precisava, quando adicionei a subsconsulta/detalhe o botão run parou de funciona. Só não entendi o porque?