Hola, estoy intentando hacer una validacion en el Alta/modificacion de una tabla.
entonces en el dt cree el evento :
function evt__validar_ingreso($fila, $id=null) (usando el generador de codigo)
El tema es que me muestra este NOTICE: (yo tengo activado que me muestre todos los errores posible el PHP)
Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 104
Este es mi dt:
<?php
class dt_t_titulares extends toba_datos_tabla
{
function get_listado($filtro=array())
{
$where = array();
if (isset($filtro['apellido'])) {
$where[] = "apellido ILIKE ".quote("%{$filtro['apellido']}%");
}
if (isset($filtro['nombre'])) {
$where[] = "nombre ILIKE ".quote("%{$filtro['nombre']}%");
}
$sql = "SELECT
t_tt.id,
t_tt.apellido,
t_tt.nombre
FROM
t_titulares as t_tt
ORDER BY apellido, nombre";
if (count($where) > 0) {
$sql = sql_concatenar_where($sql, $where);
}
return toba::db('muni_gis')->consultar($sql);
}
function get_descripciones($id)
{
if (isset($id)) {
$sql = "SELECT id, (apellido || ', ' || nombre || '(' || COALESCE(numerodoc,'0') || ')' ) as ape_nom , 'get_descripciones' as origen FROM t_titulares WHERE id = $id";
} else {
$sql = "SELECT id, (apellido || ', ' || nombre || '(' || COALESCE(numerodoc,'0') || ')' ) as ape_nom , 'get_descripciones' as origen FROM t_titulares ORDER BY apellido, nombre";
}
return toba::db('muni_gis')->consultar($sql);
}
function get_tit_apenom($array)
{
toba::logger()->debug('array en get_tit_apenom');
//var_dump($array);
if (isset($array['id'])) {
$sql = "SELECT id, (apellido || ', ' || nombre || '(' || COALESCE(numerodoc,'0') || ')' ) as tit_ape_nom FROM t_titulares WHERE id = ".$array['id'];
} else {
$sql = "SELECT id, (apellido || ', ' || nombre || '(' || COALESCE(numerodoc,'0') || ')' ) as tit_ape_nom FROM t_titulares ORDER BY apellido, nombre";
}
toba::logger()->debug("sql: ". $sql);
return toba::db('muni_gis')->consultar($sql);
}
function get_tit_apenom_masiva($array)
{
toba::logger()->debug('array en get_tit_apenom_masiva'.$array['titular_id']);
//var_dump($array);
if (isset($array['titular_id'])) {
$sql = "SELECT id, (apellido || ', ' || nombre || '(' || COALESCE(numerodoc,'0') || ')' ) as tit_ape_nom FROM t_titulares WHERE id = ".$array['titular_id'];
} else {
$sql = "SELECT id, (apellido || ', ' || nombre || '(' || COALESCE(numerodoc,'0') || ')' ) as tit_ape_nom FROM t_titulares ORDER BY apellido, nombre";
}
toba::logger()->debug("sql: ". $sql);
return toba::db('muni_gis')->consultar($sql);
}
function get_titular_apellidoynombre($id)
{
//var_dump($id);
$sql = "SELECT t_titulares.id, (trim(apellido) || ', ' || nombre || ' (' || tdoc.descripcion_corta ||'-' || numerodoc || ')' ) as ape_nom
FROM t_titulares
LEFT JOIN t_tipodoc tdoc on t_titulares.tpodoc_id = tdoc.id
Where t_titulares.id=$id
ORDER BY apellido, nombre";
toba::logger()->debug(" sql: \n $sql");
return toba::db('muni_gis')->consultar($sql);
}
function existe_dni($tpodoc, $nrodoc)
{
$rs = null;
if (strlen($nrodoc) > 0 and $nrodoc > 0) {
$sql = "SELECT id, apellido , nombre FROM t_titulares WHERE numerodoc = $nrodoc and tpodoc_id = $tpodoc";
$rs = toba::db('muni_gis')->consultar($sql);
}
return !empty($rs);
}
function existe_duplicado_completo($tpodoc, $nrodoc, $apellido, $nombre)
{
$rs = null;
if (strlen($nrodoc) > 0 and $nrodoc > 0) {
$sql = "SELECT id, apellido , nombre FROM t_titulares WHERE numerodoc=$nrodoc and tpodoc_id=$tpodoc and apellido=$apellido and nombre=$nombre";
$rs = toba::db('muni_gis')->consultar($sql);
}
return !empty($rs);
}
/**
* Ventana de validacion que se invoca cuando se crea o modifica una fila en memoria. Lanzar una excepcion en caso de error
* @param array $fila Datos de la fila
* @param mixed $id Id. interno de la fila, si tiene (en el caso modificacion de la fila)
*/
function evt__validar_ingreso($fila, $id=null)
{
//toba::logger()->debug("fila: ". print_r($fila));
if ($fila['tpodoc_id'] <> 0 and $fila['numerodoc'] <> 0 and $id==null) { //Modificacion
if ($this->existe_dni($fila['tpodoc_id'],$fila['numerodoc']))
throw new toba_error('El Numero de Documento y Tipo de Documento ya existe en la base de datos!. Verifique');
}
echo ":::AnTES:::";
var_dump($fila);
if ($this->existe_duplicado_completo($fila['tpodoc_id'],$fila['numerodoc'], $fila['apellido'],$fila['nombre']) ) {
throw new toba_error('El Titular ya fue dado de Alta en la base de datos!. Verifique');
}
}
}
?>
Y esto como veran hay un var_dump, despues del texto “:::anTES:::”
y esto es lo que sale en la primer parte de la pagina:
:::AnTES:::array(4) { ["apellido"]=> string(6) "PARDAL" ["nombre"]=> string(4) "Jose" ["tpodoc_id"]=> string(1) "1" ["numerodoc"]=> string(1) "0" }
Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 104
:::AnTES:::array(1) { ["id"]=> string(2) "22" } Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: numerodoc in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: apellido in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: nombre in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 104 :::AnTES:::array(1) { ["fecha_alta_reg"]=> NULL } Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: numerodoc in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: apellido in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: nombre in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 104 :::AnTES:::array(1) { ["usuario_alta_reg"]=> NULL } Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: numerodoc in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: apellido in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: nombre in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 104 :::AnTES:::array(1) { ["usuario_mod_reg"]=> NULL } Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: numerodoc in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: apellido in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: nombre in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 104 :::AnTES:::array(1) { ["fecha_mod_reg"]=> NULL } Notice: Undefined index: tpodoc_id in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: numerodoc in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: apellido in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110 Notice: Undefined index: nombre in /home/nicolas/Descargas/muni_gis/php/datos/dt_t_titulares.php on line 110
Porque Sucede esto ???
Lo que mas molesta es que hace la validacion!
Si en algun momento no entra al evento con los indices correctos, para que sirve entonces?
Saludos