AR
Arquivo não encontrado: '.ini' - throw new Exception
Olá, estou tendo um problema no segundo throw (throw new Exception('Produto já cadastrado');). Quando um produto que já foi inserido for inserido novamente, ele não permite, até aí está correto, o problema que preciso preencher os campos novamente com o comando $this->form->setData( $this->form->getData()); aí ele gera o erro como mostra o anexo. O que é estranho que só acontece no segundo throw do código, pois o primeiro funciona perfeitamente
------------------------Funcionando
if( (!$data->item_pedido_produto_id))
{
throw new Exception('Codigo do produto, Quan. de Caixa e Quant. de peças são campos obrigató ');
}
-----------------------Não funciona com
if ($mkey !==false)
{
throw new Exception('Produto já cadastrado');
}
.....
.....
catch (Exception $e)
{
$this->form->setData( $this->form->getData()); <------------------------Essa linha gera o erro
new TMessage('error', 'Error ' . $e->getMessage());
Desde já agradeço.
OBS. Quando não uso $this->form->setData( $this->form->getData()); funciona perfeitamente, só que os campos perdem os preenchimentos.
Desde já agradeço.
------------------------Funcionando
if( (!$data->item_pedido_produto_id))
{
throw new Exception('Codigo do produto, Quan. de Caixa e Quant. de peças são campos obrigató ');
}
-----------------------Não funciona com
if ($mkey !==false)
{
throw new Exception('Produto já cadastrado');
}
.....
.....
catch (Exception $e)
{
$this->form->setData( $this->form->getData()); <------------------------Essa linha gera o erro
new TMessage('error', 'Error ' . $e->getMessage());
Desde já agradeço.
OBS. Quando não uso $this->form->setData( $this->form->getData()); funciona perfeitamente, só que os campos perdem os preenchimentos.
Desde já agradeço.
- <?php
- public function onAddItemPedido( $param )
- {
- try
- {
- $data = $this->form->getData();
- if( (!$data->item_pedido_produto_id))
- {
- throw new Exception('Codigo do produto, Quan. de Caixa e Quant. de peças são campos obrigató ');
- }
- $item_pedido_items = TSession::getValue('item_pedido_items');
- $vcodprod=$data->item_pedido_produto_id;
- $mkey = array_search($vcodprod, array_column($item_pedido_items, 'item_pedido_produto_id'));
- if ($mkey !==false)
- {
- throw new Exception('Produto já cadastrado');
- }
- $key = !empty($data->item_pedido_id) ? $data->item_pedido_id : uniqid();
- $fields = [];
- $fields['item_pedido_codprod'] = $data->item_pedido_codprod;
- $fields['item_pedido_produto_id'] = $data->item_pedido_produto_id;
- $fields['item_pedido_quantidade'] = $data->item_pedido_quantidade;
- $fields['item_pedido_valor'] = $data->item_pedido_valor;
- $fields['item_pedido_volumes'] = $data->item_pedido_volumes;
- $fields['item_pedido_qcxcomprada'] = $data->item_pedido_qcxcomprada;
- $item_pedido_items[ $key ] = $fields;
- TSession::setValue('item_pedido_items', $item_pedido_items);
- // limpa os campos do item do pedido
- $data->item_pedido_codprod = '';
- $data->item_pedido_volumes = '';
- $data->item_pedido_item_pedido_qcxcomprada = '';
- $data->item_pedido_produto_id = '';
- $data->item_pedido_quantidade = '';
- $data->item_pedido_valor = '';
- $data->item_pedido_id = '';
- $data->item_pedido_qcxcomprada='';
- $this->form->setData($data);
- $this->onReload( $param );
- }
- catch (Exception $e)
- {
- $this->form->setData( $this->form->getData()); <------------------------Essa linha gera o erro
- new TMessage('error', '<b>Error</b> ' . $e->getMessage());
- }
- }
- ?>
Pelo detalhe do erro, o problema ocorre com o TDBSeekButton. Você está usando a função setAuxiliar com o seek? Está passando todos os parâmetros necessários para esse componente?
Obrigado pelo retorno.
Sim estou usando.
E da maneira que está, pode se digitar um valor ou criar um filtro.
Está errado ?