No graba datos de discapacidad en versión 2.9.2

Buenos días,

En la versión 2.9.2 de Guaraní 3W, en el perfil del alumno, no se graban los datos de discapacidad, tampoco se actualiza la fecha de actualización de los datos. Al hacer clic en el botón Confirmar o Grabar no emite ningún mensaje ni realiza ningún cambio.

Saludos.

Marcela

¡Buen día Marcela! ¿podrías por favor adjuntarnos los logs?

Buen día Emilse,

Te adjunto el log.

Saludos


20160923_103442___4809.txt (27.1 KB)

Hola Marcela, por lo que veo en los logs no esta llegando ningún valor ingresado, los campos Tipo, Grado, Carácter, cobertura de salud y fecha desde llegan vacíos, y esto hace que falle la validación del formulario:


--  LOG #0  --------------------------------------------------------------------

error validacion. form_datos_discapacidad[TIPO]:form_validacion_error.vacio. Valor provisto: ''

--  LOG #1  --------------------------------------------------------------------

Array
(
)


--  FALLA FORM VALIDAR form_datos_discapacidad  --------------------------------

TIPO

--  LOG #2  --------------------------------------------------------------------

error validacion. form_datos_discapacidad[GRADO]:form_validacion_error.vacio. Valor provisto: ''

--  LOG #3  --------------------------------------------------------------------

Array
(
)


--  FALLA FORM VALIDAR form_datos_discapacidad  --------------------------------

GRADO

--  LOG #4  --------------------------------------------------------------------

error validacion. form_datos_discapacidad[CARACTER]:form_validacion_error.vacio. Valor provisto: ''

--  LOG #5  --------------------------------------------------------------------

Array
(
)


--  FALLA FORM VALIDAR form_datos_discapacidad  --------------------------------

CARACTER

--  LOG #6  --------------------------------------------------------------------

error validacion. form_datos_discapacidad[COBERTURA_SALUD]:form_validacion_error.vacio. Valor provisto: ''

--  LOG #7  --------------------------------------------------------------------

Array
(
)


--  FALLA FORM VALIDAR form_datos_discapacidad  --------------------------------

COBERTURA_SALUD

--  LOG #8  --------------------------------------------------------------------

error validacion. form_datos_discapacidad[FECHA_DESDE]:form_validacion_error.vacio. Valor provisto: ''

--  LOG #9  --------------------------------------------------------------------

Array
(
    [format] => d/m/Y
    [allowempty] => 1
)


--  FALLA FORM VALIDAR form_datos_discapacidad  --------------------------------

FECHA_DESDE

por lo que veo ustedes están usando personalizaciones (personalización comun), les pediría que revisen dichas personalizaciones para ver si están afectando. También prueben deshabilitar las personalizaciones para ver si esto sigue ocurriendo y saber si se trata de un problema de personalizaciones o del core.

saludos.

Hola Leonel,

Probé deshabilitando las personalizaciones y tampoco graba los datos.

Te adjunto los archivos de logs.

Saludos


logs.rar (8.03 KB)

Hola

Yo probé sobre ambiente 292 y no encuentro problema

Saludos
Javier

Pareciera que el problema se da con la fecha hasta cuando no se ingresa un valor.

Error:
mensaje: SQL ERROR: SQLSTATE[HY000]: General error: -1206 [Informix][Informix ODBC Driver][Informix]Invalid day in date (SQLExecDirect[-1206] at /home/jguerra/instalacion_guarani/PDO/PDO_INFORMIX-1.2.7/informix_driver.c:268)

INSERT INTO sga_datos_salud
(…
fecha_desde ,
fecha_hasta ,
…)

            VALUES         (.....
                            '09/01/2016'    ,
                        [b]    ''    ,                ---> aca esta el problema[/b]
                            ....)

Lo extraño que probamos sin ingresar fecha hasta y no nos da este error

En el cliente de informix donde esta el web server deberian tener configurado el dbdate, de esta forma? DMY4/ ?
SET DBDATE=DMY4/

Buen día Alejandro,

Configuré DBDATE de la manera que me indicaste y tampoco funcionó.
El problema se dá cuando se quiere guardar una fecha en donde el día es mayor a 12.
Lo solucioné modificando en el archivo modelo\transacciones\datos_censales.php en la función grabar_datos_salud donde dice date(‘m/d/Y’…) como date('d/m/Y…)


//$parametros['form_datos_discapacidad']['FECHA_DESDE'] = date('m/d/Y', strtotime(str_replace('/','-',$parametros['form_datos_discapacidad']['FECHA_DESDE'])));
$parametros['form_datos_discapacidad']['FECHA_DESDE'] = date('d/m/Y', strtotime(str_replace('/','-',$parametros['form_datos_discapacidad']['FECHA_DESDE'])));
......

//$parametros['form_datos_discapacidad']['FECHA_HASTA'] = date('m/d/Y', strtotime(str_replace('/','-',$parametros['form_datos_discapacidad']['FECHA_HASTA'])));
$parametros['form_datos_discapacidad']['FECHA_HASTA'] = date('d/m/Y', strtotime(str_replace('/','-',$parametros['form_datos_discapacidad']['FECHA_HASTA'])));

Saludos.

El log que adjuntaste tenia la fecha 09/01/2016. En este caso no debiera dar error, mas alla que tome el 9 como mes o como dia y lo mismo el 1, y aque 09/01/2016 es una fecha valida y 01/09/2016 tambien lo es.

El formateo de la fecha debiera corresponder con lo definido en el cliente de Informix. Por defecto en informix el formato de fecha es mm/dd/yyyy pero si se cambia el DBDATE en el cliente, entonces debe ajustarse esta conversion segun el formato definido en el DBDATE

¿Marcela tenes redefinido el valor del parametro DBDATE en /etc/apache2/envvars ?