Lançado Adianti Framework 7.6!
Clique aqui para saber mais
grid em consulta criada pelo assistente nao deleta Boa noite, eu sou iniciante no mundo web e estou sofrendo com meus primeiros testes com o adianti studio, fiz um cadastro de cidades usando o assistente e uma cosulta completa tbm usando o assistente, o cadastro funciona legal e a consulta tbm lista todos os dados porem tem um detalhe o botao criado dentro do grid para deletar nao deleta os registros, ele da a menssagem que foi deletado porem o m...
FP
grid em consulta criada pelo assistente nao deleta  
Fechado
Boa noite, eu sou iniciante no mundo web e estou sofrendo com meus primeiros testes com o adianti studio,
fiz um cadastro de cidades usando o assistente e uma cosulta completa tbm usando o assistente, o cadastro funciona legal e a consulta tbm lista todos os dados porem tem um detalhe o botao criado dentro do grid para deletar nao deleta os registros, ele da a menssagem que foi deletado porem o mesmo nao acontece alguem pode me ajudar, vai em anexo o projeto pra alguem q estiver disposto a me ajudar agradeco muito,
dentro da pasta do projeto tem um script sql com o meu banco de dados desde ja agradeco toda ajuda possivel

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (4)


FC

  1. <?php
  2. function Delete($param)
  3.     {
  4.         try
  5.         {
  6.             // get the parameter $key
  7.             $key=$param['key'];
  8.             // open a transaction with database 'entech_imobiliarias'
  9.             TTransaction::open('entech_imobiliarias');
  10.             $repository = new TRepository('Cad_cidades');
  11.             
  12.             // instantiates object Cad_cidades
  13.             $object = new Cad_cidades($key);
  14.             
  15.             // deletes the object from the database
  16.             $object->delete();
  17.             
  18.             // close the transaction
  19.             TTransaction::close();
  20.             
  21.             // reload the listing
  22.             $this->onReload$param );
  23.             // shows the success message
  24.             new TMessage('info'TAdiantiCoreTranslator::translate('Record deleted'));
  25.         }
  26.         catch (Exception $e// in case of exception
  27.         {
  28.             // shows the exception error message
  29.             new TMessage('error''<b>Error</b> ' $e->getMessage());
  30.             
  31.             // undo all pending operations
  32.             TTransaction::rollback();
  33.         }
  34.     }
  35.   ?>


Faltou o dizer qual é o Model !!!
FC

faça a correção nome da variavel que coloquei
errado
$repository = new TRepository('Cad_cidades');

correto
$object = new TRepository('Cad_cidades');

PD

Fernando,

Para excluir baseado no ID, não é necessário usar a TRepository.
Você também pode ligar os LOGS do framework, veja como:
www.adianti.com.br/doc-framework-Persistence-Objects-RegisterLog

Além disso, procure configurar o php.ini para que exiba os erros (durante o desenvolvimento):
display_errors = On
error_reporting = E_ALL

Lembre-se de alterar a configuração quando o sistema entrar em produção:
display_errors = Off
log_errors = On
error_log = /tmp/php5.log

abs,
Pablo
AM

Arquivo: FilmeList
===============
  1. <?php
  2. class FilmeList extends TPage
  3. {
  4.     private $datagrid;
  5.     function __construct()
  6.     {
  7.         parent::__construct();
  8.         
  9.         $vbox = new TVBox;
  10.         $vbox->add(new TXMLBreadCrumb('menu.xml'__CLASS__));
  11.         $vbox->add($this->form);
  12.         parent::add($vbox);
  13.         
  14.         $this->datagrid = new TQuickGrid;
  15.         $this->datagrid->setHeight(300);
  16.         $this->datagrid->makeScrollable();
  17.         
  18.         $this->datagrid->addQuickColumn('ID''id''right'60);
  19.         $this->datagrid->addQuickColumn('Título''titulo''left'200);
  20.         $this->datagrid->addQuickColumn('Diretor''diretor''left'100);
  21.         $this->datagrid->addQuickColumn('Suporte''id_suporte''left'100);
  22.         $this->datagrid->addQuickColumn('Gênero''id_genero''left'100);
  23.         $this->datagrid->addQuickColumn('Data de Lançamento''dt_lcto''center'100);
  24.         $this->datagrid->addQuickColumn('Duração''duracao''left'100);
  25.         $edit = new TDataGridAction(array('FilmeForm''onEdit'));
  26.         $this->datagrid->addQuickAction('Editar'$edit'id''ico_find.png');
  27.         $delete = new TDataGridAction(array('FilmeList''onDelete'));
  28.         $this->datagrid->addQuickAction('Excluir'$delete'id''ico_delete.png');
  29.         
  30.         $this->datagrid->createModel();
  31.         parent::add($this->datagrid);
  32.     }
  33.       
  34.         function show()
  35.     {
  36.         $this->onReload();
  37.         parent::show();
  38.     }
  39.           
  40.     function onDelete($param)
  41.     {
  42.     try
  43.     {
  44.         $key=$param['key'];
  45.         TTransaction::open('teste');
  46.             $object = new Filme($key);
  47.             $object->delete();
  48.         TTransaction::close();
  49.         
  50.         $this->onReload$param );
  51.         }
  52.     catch (Exception $e)
  53.     {
  54.         new TMessage('error'"O registro $key não pode ser excluido.");
  55.         TTransaction::rollback();
  56.     }
  57.     }
  58.       
  59.     function onReload($param NULL)
  60.     {
  61.         try
  62.         {
  63.             TTransaction::open('teste');
  64.             
  65.             $repository = new TRepository('Filme');
  66.             $limit 10;
  67.             $criteria = new TCriteria;
  68.             $criteria->setProperties($param);
  69.             $criteria->setProperty('limit'$limit);
  70.             
  71.             $objects $repository->load($criteria);
  72.             
  73.             $this->datagrid->clear();
  74.             if ($objects)
  75.             {
  76.                 foreach ($objects as $object)
  77.                 {
  78.                     $this->datagrid->addItem($object);
  79.                 }
  80.             }
  81.             $criteria->resetProperties();
  82.             $count$repository->count($criteria);
  83.             TTransaction::close();
  84.             $this->loaded true;
  85.         }
  86.         catch (Exception $e)
  87.         {
  88.             new TMessage('error''<b>Error</b> ' $e->getMessage());
  89.             TTransaction::rollback();
  90.         }
  91.     }
  92. }
  93. ?>