PF
Utilizar um filtro após selecionar um determinada conta bancária
Desejo selecionar uma conta bancária usando o componente TDBSeekButton e ao clicar em no botão de seleção dos cheques aparecerá apenas os cheques daquela conta.
...
$criteria_contas = new TCriteria;
$criteria_contas->add(new TFilter('status', '=', 'A'));
$contas_id = new TDBSeekButton('contas_id','sysgestocon', 'form_movimentos', 'contas', 'conta', 'contas_id', 'contas_nome', $criteria_contas );
$contas_nome = new TEntry('contas_nome');
$movimentostipos_id = new TDBCombo('movimentostipos_id','sysgestocon', 'movimentostipos', 'id', 'tipo', 'ordem' );
$vencimento = new TDate('vencimento');
$pagamento = new TDate('pagamento');
$valor = new TEntry('valor');
$criteria_cheques = new TCriteria;
$criteria_cheques->add(new TFilter('chequesfases_id', '=', 'DP'));
$criteria_cheques->add(new TFilter('contas_id', '=', '<<<DESEJO COLOCAR AQUI O CODIGO DA CONTA SELECIONADA >>>'));
...
...
$criteria_contas = new TCriteria;
$criteria_contas->add(new TFilter('status', '=', 'A'));
$contas_id = new TDBSeekButton('contas_id','sysgestocon', 'form_movimentos', 'contas', 'conta', 'contas_id', 'contas_nome', $criteria_contas );
$contas_nome = new TEntry('contas_nome');
$movimentostipos_id = new TDBCombo('movimentostipos_id','sysgestocon', 'movimentostipos', 'id', 'tipo', 'ordem' );
$vencimento = new TDate('vencimento');
$pagamento = new TDate('pagamento');
$valor = new TEntry('valor');
$criteria_cheques = new TCriteria;
$criteria_cheques->add(new TFilter('chequesfases_id', '=', 'DP'));
$criteria_cheques->add(new TFilter('contas_id', '=', '<<<DESEJO COLOCAR AQUI O CODIGO DA CONTA SELECIONADA >>>'));
...
Bom dia Paulo Fonceca, eu precisei de algo similar a isso, utilizei uma ação no evento onexit do componente TDBSeekButton,
Fernando, bom dia!
Valeu a dica. Segue abaixo a alteração que fiz. Fica a dúvida.Como faço para capturar no criteria dos cheques o objeto enviado com a informação?
public static function onChangeActionMovimentosTipos($param)
{
if (!empty($param['movimentostipos_id']))
{
try
{
$obj = new StdClass;
$contas_id = $param['contas_id'];
if ($param['movimentostipos_id']=='CH')
{
TDBSeekButton::enableField('form_movimentos', 'cheques_id');
$obj->conta = $param['movimentostipos_id'];
}
else
{
TDBSeekButton::clearField('form_movimentos', 'cheques_id');
TDBSeekButton::disableField('form_movimentos', 'cheques_id');
$obj->conta = '0';
}
TForm::sendData('form_movimentos', $obj);
//self::onChangeTipoMoeda(array('tipomoeda'=>'D'));
}
catch (Exception $e)
{
//does nothing
}
}
}
+++++++++++++++++++
$criteria_cheques = new TCriteria;
$criteria_cheques->add(new TFilter('chequesfases_id', '=', 'DP'));
$criteria_cheques->add(new TFilter('contas_id', '=', '<<<DESEJO COLOCAR AQUI O CODIGO DA CONTA SELECIONADA >>>'));
</DESEJO>
adianti.com.br/framework_files/tutor/index.php?class=FormInteraction
Bom dia Paulo desculpa a demora, você pode jogar em um array ou pegar o Trecords e popular o uma grid ali mesmo no evento onChange,
$saldo = vw_saldoclientedinheiro::getSaldo($array); nessa linha aqui presente no meu exemplo eu utilizo uma classe para capturar os saldos do cliente e pego ela através de um array, qualquer duvida me chama no waths 65996728882 tenho acessado pouco o forum por falta de tempo acaba sendo mais fácil responder waths ou telegran