From 4573cabb27c117ffbc64a897dc04d5e6160a159b Mon Sep 17 00:00:00 2001 From: Lucas D'Avila Date: Fri, 22 Feb 2013 18:05:57 -0300 Subject: [PATCH] Alterado tipo de dados do campo aluno_estado_id em aluno, de integer para varchar, compatibilizando diferentes formatos de códigos, tanto numericos como alfanumericos. --- ieducar/intranet/include/pmieducar/clsPmieducarAluno.inc.php | 6 +++--- ieducar/misc/database/deltas/portabilis/50_altera_tipo_aluno_estado_id_para_varchar_em_aluno.sql | 18 ++++++++++++++++++ ieducar/modules/Cadastro/Views/AlunoController.php | 4 ++-- 3 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 ieducar/misc/database/deltas/portabilis/50_altera_tipo_aluno_estado_id_para_varchar_em_aluno.sql diff --git a/ieducar/intranet/include/pmieducar/clsPmieducarAluno.inc.php b/ieducar/intranet/include/pmieducar/clsPmieducarAluno.inc.php index 1be62e2..17b710c 100644 --- a/ieducar/intranet/include/pmieducar/clsPmieducarAluno.inc.php +++ b/ieducar/intranet/include/pmieducar/clsPmieducarAluno.inc.php @@ -319,7 +319,7 @@ class clsPmieducarAluno $gruda = ', '; } - if (is_numeric($this->aluno_estado_id)) { + if ($this->aluno_estado_id) { $campos .= "{$gruda}aluno_estado_id"; $valores .= "{$gruda}'{$this->aluno_estado_id}'"; $gruda = ', '; @@ -421,11 +421,11 @@ class clsPmieducarAluno $gruda = ', '; } - if (is_numeric($this->aluno_estado_id)) { + if ($this->aluno_estado_id) { $set .= "{$gruda}aluno_estado_id = '{$this->aluno_estado_id}'"; $gruda = ', '; } - elseif ($this->aluno_estado_id == '') { + else { $set .= "{$gruda}aluno_estado_id = NULL"; $gruda = ', '; } diff --git a/ieducar/misc/database/deltas/portabilis/50_altera_tipo_aluno_estado_id_para_varchar_em_aluno.sql b/ieducar/misc/database/deltas/portabilis/50_altera_tipo_aluno_estado_id_para_varchar_em_aluno.sql new file mode 100644 index 0000000..2b57576 --- /dev/null +++ b/ieducar/misc/database/deltas/portabilis/50_altera_tipo_aluno_estado_id_para_varchar_em_aluno.sql @@ -0,0 +1,18 @@ + -- // + + -- + -- Altera tipo de dados da coluna aluno_estado_id, da tabela pmieducar.aluno, + -- de modo que o campo seja compativel com diferentes formatos de código. + -- + -- @author Lucas D'Avila + -- @license @@license@@ + -- @version $Id$ + + ALTER TABLE pmieducar.aluno ALTER COLUMN aluno_estado_id type varchar(25); + + -- //@UNDO + +-- Não é possível converter uma coluna character varying para integer. Caso +-- necessário, um script de rotação de dados deverá ser criado. + + -- // diff --git a/ieducar/modules/Cadastro/Views/AlunoController.php b/ieducar/modules/Cadastro/Views/AlunoController.php index ee07ad3..ddfefb1 100644 --- a/ieducar/modules/Cadastro/Views/AlunoController.php +++ b/ieducar/modules/Cadastro/Views/AlunoController.php @@ -136,8 +136,8 @@ class AlunoController extends Portabilis_Controller_Page_EditController $this->inputsHelper()->integer('aluno_inep_id', $options); // código aluno rede estadual - $options = array('label' => $this->_getLabel('aluno_estado_id'), 'required' => false, 'size' => 25, 'max_length' => 9); - $this->inputsHelper()->integer('aluno_estado_id', $options); + $options = array('label' => $this->_getLabel('aluno_estado_id'), 'required' => false, 'size' => 25, 'max_length' => 25); + $this->inputsHelper()->text('aluno_estado_id', $options); // nome $options = array('label' => $this->_getLabel('pessoa'), 'size' => 68); -- libgit2 0.21.2