opengnsys-1.1.0 (#14) - No me permite añadir acciones a procedimeintos (#415) - Message List
Hola,
Acabamos de notar que no nos permite crear nuevos procedimientos ni agregar acciones a procedimientos existentes. El mensaje que aparece es:
ATENCIÓN: Ha ocurrido un error al intentar registrar este Comando como un Procedimiento
He realizado una comprobación de las tablas con
sudo mysqlcheck -c ogAdmBD -u root -p
Y me da OK en todas la tablas.
¿Alguna idea?
SAlu2
-
Message #909
Hola,
Examinando los logs de error de mysql y apache, lo único que he visto es esto en el de apache:
[Tue Dec 10 16:47:56.506576 2019] [:error] [pid 26259] [client IP.IP.IP.IP:52111] PHP Notice: Undefined offset: 1 in /opt/opengnsys/www/includes/comunes.php on line 154, referer: https://IP.IP.IP.IP/opengnsys/principal/acciones.php
Este mensaje de error aparece cada cierto tiempo en el log, pero no se si estará relacionado con el fallo.
SAlu2
acodonerDec 10, 2019, 5:01:19 PM (5 years ago)-
Message #910
Hola.
En la versión 1.1.1 tenemos unas correcciones en el fichero
/opt/opengnsys/www/includes/comunes.php
, sustituyendo la antigua funciónsplit
porexplode
, lo que evita problemas en las nuevas versiones de PHP. Prueba a hacer los cambios a ver si funciona.Saludos.
ramonDec 10, 2019, 5:25:26 PM (5 years ago)-
Message #911
Muchas gracias por la respuesta,
He sustituido en el fichero que indicas la función split por explode y he reiniciado el servidor, pero el problema persiste. También he sustituido el fichero por el que viene con la versión 1.1.1 por si había otros cambios aparte de las funciones y tampoco se ha solucionado.
Me inclino a pensar que el problema puede estar en el fichero /opt/opengnsys/www/asistentes/gestores/gestor_Comandos.php, dentro del bloque que incluye la acción en el procedimiento ya que si que crea el procedimiento, pero no mete dentro la acción. De momento no se muy bien como podría hacer una traza del código php para localizar el fallo.
SAlu2
acodonerDec 11, 2019, 10:28:29 AM (5 years ago)-
Message #912
Hola de nuevo,
Por si sirve de algo...
He probado a insertar manualmente una acción en un procedimiento existente con la sentencia que se utiliza en /opt/opengnsys/www/asistentes/gestores/gestor_Comandos.php:
mysql> INSERT INTO procedimientos_acciones(idprocedimiento,orden,idcomando,parametros) VALUES ("201","0","9","nfn=IniciarSesion");
Y me ha dado el siguiente error:
ERROR 1364 (HY000): Field 'procedimientoid' doesn't have a default value
En efecto el campo no tiene definido valor por defecto:
mysql> describe procedimientos_acciones; +-----------------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------------------+-------------+------+-----+---------+----------------+ | idprocedimientoaccion | int(11) | NO | PRI | NULL | auto_increment | | idprocedimiento | int(11) | NO | | 0 | | | orden | smallint(4) | YES | | NULL | | | idcomando | int(11) | NO | | 0 | | | parametros | text | YES | | NULL | | | procedimientoid | int(11) | NO | | NULL | | +-----------------------+-------------+------+-----+---------+----------------+ 6 rows in set (0,00 sec)
La base de datos está en strict mode:
mysql> select @@sql_mode; +-------------------------------------------------------------------------------------------------------------------------------------------+ | @@sql_mode | +-------------------------------------------------------------------------------------------------------------------------------------------+ | ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION | +-------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0,00 sec)
Creo que el fallo está ahí, lo que no sé que es mejor, definir un valor por defecto para ese campo, permitir que sea NULL o desactivar el modo strict en la base de datos.
SAlu2
acodonerDec 11, 2019, 10:53:27 AM (5 years ago)-
Message #913
Buenas.
En la versión 1.1.1 (Espeto) ese campo tiene un valor por defecto:
procedimientoid INT(11) NOT NULL DEFAULT '0'
Aprovecho para indicar que ya hemos liberado la nueva versión y que vamos a anunciarlo en breve.
Saludos.
ramonDec 11, 2019, 12:15:28 PM (5 years ago)-
Message #914
Hola,
Con ese cambio funciona perfectamente, gracias.
Por cierto, ahora tenemos la 1.1.0a en Ubuntu 16.04, bastará con ejecutar el script de actualización para pasar a la 1.1.1 o es necesario montarla sobre una Ubuntu 18.04?
SAlu2
acodonerDec 11, 2019, 2:18:36 PM (5 years ago)-
Message #915
Me auto contesto,
He probado en una mv para pruebas lo que dice en la documentación, primero he actualizado a la 18.04 y a continuación he ejecutado el guion de actualización. En principio todo parece haber ido bien.
SAlu2
acodonerDec 11, 2019, 6:53:19 PM (5 years ago)-
Message #916
Hola.
Has hecho bien, para actualizar a OpenGnsys 1.1.1 hay que actualizar primero Ubuntu a la 18.04, porque hay dependencias importantes.
Saludos.
ramonDec 12, 2019, 7:16:23 AM (5 years ago)
-
-
-
-
-
-
-