SIU-Guarani/Version3.20.0/consideraciones tecnicas/cambios parametros

De SIU
Revisión del 10:43 28 abr 2017 de Fmartinez (discusión | contribuciones)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Cambios en el esquema de Parámetros

A fin de dotar de una mayor flexibilidad a la configuración del sistema y favorecer implementaciones centralizadas, muchos de los parámetros del sistema cambiaron el nivel mínimo de definición que permitían. De esta manera, parámetros que hasta la versión anterior podían ser configurados solamente con un valor por defecto para toda la Institución, ahora permiten redefiniciones más específicas, por ejemplo, a nivel Responsable Académica, Tipo de Propuesta, Propuesta o Plan.

Cuando un parámetro admite definición por nivel, es necesario proveer "atributos", es decir, Responsables Académicas, Tipos de Propuestas, Propuestas o Planes, que está manejando en cada momento cada operación, para que pueda resolver el valor específico. En caso de que con los atributos recibidos se llegue a definiciones contradictorias entre sí (ej: una comisión es compartida por dos propuestas, y el parámetro tiene distintos valores para esas propuestas), se resuelve con el valor definido por defecto.

En el proceso de revisión, adicionalmente, se unificaron todas las distintas maneras de invocar al componente de parámetros en el código bajo la forma:

$valor = guarani::parametros()->get_valor('param_x');

Esa es la forma más compacta de invocar a la función, que presenta la siguiente signatura:

function get_valor($parametro, $atributos=null, $usar_cache=true, $operacion=null)

En la mayoría de los casos, cuando se necesitan "atributos" para resolver el valor, los mismos se obtienen de una porción de caché donde las respectivas operaciones guardan los atributos actuales. Pero en algunas situaciones puntuales es necesario indicarlos explícitamente, y en ese caso se completa el segundo parámetro de la función. Por ejemplo:

$cur_controlar_cupo = guarani::parametros()->get_valor('cur_controlar_cupo', $propuesta);

Siempre los atributos que recibe son los correspondientes al nivel mínimo de definición. En caso de no encontrar una definición específica con esos valores, se intenta buscar resolver en el nivel superior, y en caso de no encontrar definiciones específicas se responde con el valor por defecto.

Si cuentan con personalizaciones, solicitamos realizar una búsqueda carpeta personalizacion de los strings 'guarani::param' y 'guarani_parametros::instancia', que eran las formas anteriores de instanciar al componente de resolución de parámetros. En caso de hallar alguna aparición, reemplazarlo por la nueva forma.

Prestar atención también a los parámetros que hasta la versión 3.12 se obtenían en las clases de consulta (co_*.php), ahora son obtenidos en los componentes que invocan a dichas funciones, que pasan a recibirlos como parámetros formales en la signatura.

Ej: co_actas.php

  • Versión 3.12
function get_alumnos_acta_examen($id_acta=null, $estado=null)
  • Versión 3.20
function get_alumnos_acta_examen($id_acta=null, $estado=null, $params_sistema = array())

Ante cualquier duda que surja en el proceso de revisión, no dejen de solicitar asistencia vía GDS.

< Volver