CN
Nova listagem de registros
Usando o Studio 5 fui em Nova Página e cliquei em Nova listagem de registros, então ele gerou o form e datagrid, beleza!
class TbentradasFormList extends TPage
{
protected $form; // form
protected $datagrid; // datagrid
protected $pageNavigation;
....
Uso o menu p/ acessá-lo, então, ele preenche 01 (um) campo com valor padrão. Ok!
Agora, quando clico no botão Novo, ele NÃO acrescenta o valor padrão. (COMO resolver isso?)
class TbentradasFormList extends TPage
{
protected $form; // form
protected $datagrid; // datagrid
protected $pageNavigation;
....
Uso o menu p/ acessá-lo, então, ele preenche 01 (um) campo com valor padrão. Ok!
Agora, quando clico no botão Novo, ele NÃO acrescenta o valor padrão. (COMO resolver isso?)
Ao clicar no botão novo a função onEdit é chamada. Ela executa o comando $this->form->clear() em novos registros. Se quiser modificar esse comportamento, adicione a função onEdit em sua classe e faça as modificações desejadas.
SOLUÇÃO:
Segui sua orientação e acrescentei no form o seguinte código:
public function onClear( $param )
{
$this->form->clear(TRUE);
}
public function onEdit( $param )
{
try
{
if (isset($param['ID']))
{
$key = $param['key']; // get the parameter $key
TTransaction::open('admissao-pa'); // open a transaction
$object = new Tbentradas($key); // instantiates the Active Record
$this->form->setData($object); // fill the form
TTransaction::close(); // close the transaction
}
else
{
// $this->form->clear(TRUE);
}
}
catch (Exception $e) // in case of exception
{
new TMessage('error', $e->getMessage()); // shows the exception error message
TTransaction::rollback(); // undo all pending operations
}
}
Muito obrigado!