Diferencia entre revisiones de «SIU-Guarani/Version3.21.0/personalizaciones/reporte alumnos»

De SIU
Saltar a: navegación, buscar
(Página creada con «===== <div id="modificar_reporte_alumnos">Modificar Reporte Alumnos</div> ===== Para consultar a la BD de negocios del sistema, SIU-Guarani cuenta con un conjunto de clase...»)
 
Línea 1: Línea 1:
 
===== <div id="modificar_reporte_alumnos">Modificar Reporte Alumnos</div> =====  
 
===== <div id="modificar_reporte_alumnos">Modificar Reporte Alumnos</div> =====  
Para consultar a la BD de negocios del sistema, SIU-Guarani cuenta con un conjunto de clases (aproximadamente una por modulo-submodulo) definidas en la solapa "''Datos''" -> "''Consultas PHP''" del '''Editor Toba'''. Las clases de consultas definidas allí, son accesibles a través del framework desde cualquier clase a partir del llamado:
+
Documentación para Reporte Alumnos para agregar columnas opcionales al reporte
 +
 
 +
1. Ingresamos a Toba Editor: Buscamos el cuadro que se encuentra en PROYECTO > Matrícula > Reportes > '''Reporte de alumnos'''.
 +
Luego dentro de la pestaña columnas creamos el campo en el cuadro (72000002) para que se vea en la tabla ''Ejemplo'': "usuario"
 +
 
 +
2. Dentro del archivo php/operaciones/matriculas/alumnos/ci_rep_alumnos.php Agregar items en la función ''get_opciones_columnas_optativas()'':  
 +
     
 
<source lang="php" enclose="div">
 
<source lang="php" enclose="div">
  toba::consulta_php('co_XXXXXXXX')
+
['valor' => 'usuario', 'descr' => 'Usuario','metodo'=>'get_columna_dinamica_usuario'],
 
</source>
 
</source>
  
En este caso, se debe redefinir la clase de consulta "''co_certificados''" de la siguiente forma:
+
3. Dentro de co_alumnos.php creamos la función nombrada en el item anterior Ej: function get_columna_dinamica_usuario(&$select, &$from,&$where)
 
+
- Indicamos en las variables &$select, &$from,&$where la logica que queremos que tenga
Ir a la la solapa "''Datos''" -> "''Consultas PHP''" del '''Editor Toba''' y seleccionar para editar la clase de Consulta "''co_certificados''" presionando [[File:G3_editar.png]]. Realizar los siguientes cambios:<br>
+
Ej :  
*'''Punto de Montaje''' : ''"personalizacion"''.  
 
*'''Clase''': "''co_certificados_XXX''"
 
*'''Archivo''': La idea es crear una clase dentro del path (<tt><path proyecto Guaraní>/personalizacion/php/nucleo</tt>) que extienda de la original. En este caso entonces, a traves del editor crear la estructura de carpetas y el archivo: ''nucleo/propuestas/certificados/co_certificados_XXX.php'' (donde ''XXX'' es el nodo de institución otorgado por el SIU). Esta estructura de directorios se creara dentro de <tt><path proyecto Guaraní>/personalizacion/php</tt> ya que previamente indicamos el punto de montaje "personalizacion".
 
 
 
Una vez realizado esto, presionar el botón "Guardar" para almacenar los cambios realizados y luego abrir el archivo recién creado y dejarlo de la siguiente forma:
 
 
<source lang="php" enclose="div">
 
<source lang="php" enclose="div">
<?php
+
/*
  class co_certificados_XXX extends co_certificados
+
  * Este metodo es utilizado exclusivamente en el Reporte de alumnos
  {
+
  */
 +
function get_columna_dinamica_usuario(&$select, &$from,&$where)
 +
{
 +
$select_metodo = " mdp_personas.usuario ";
 +
$select = ($select == '1') ? $select_metodo : $select . ' , ' . $select_metodo;
 +
}
 +
</source>
  
  // Se agrega el siguiente metodo como una nueva consulta a la BD para traer ademas de los datos basicos, el campo 'duracion_en_meses'
 
  function get_listado_validez($where)
 
  {
 
if ($where) {
 
$where = 'AND ' . $where;
 
}
 
       
 
$sql = "SELECT sga_certificados.certificado,
 
sga_certificados.nombre,
 
sga_certificados.nombre_femenino,
 
sga_certificados_tipos.certificado_tipo as certificado_tipo_codigo,
 
sga_certificados_tipos.descripcion as certificado_tipo,
 
sga_titulos_niveles.descripcion as titulo_nivel,
 
sga_certificados.disciplina,
 
sga_certificados.titulo_araucano,
 
".guarani_sql::get_case('sga_certificados','estado').",
 
  sga_certificados.codigo,
 
      sga_g3entidades.entidad,
 
  sga_certificados.duracion_en_meses
 
FROM sga_certificados
 
LEFT JOIN sga_titulos_niveles ON sga_certificados.titulo_nivel = sga_titulos_niveles.titulo_nivel
 
LEFT JOIN sga_g3entidades ON sga_certificados.entidad = sga_g3entidades.entidad,
 
sga_certificados_tipos
 
WHERE sga_certificados.certificado_tipo = sga_certificados_tipos.certificado_tipo
 
$where
 
ORDER BY codigo,
 
certificado_tipo,
 
titulo_nivel
 
";
 
return guarani_db::consultar($sql);
 
  }
 
  
}
+
*'''Vista preliminar de como quedaria el reporte.
?>
+
[[File:Usuario.png]]
</source>
 
De esta forma, se redefine solamente el método que traía los datos del cuadro sustituyéndolo por el que obtiene los datos de la nueva consulta que generaremos en el paso siguiente.
 

Revisión del 18:27 30 mar 2023

Modificar Reporte Alumnos

Documentación para Reporte Alumnos para agregar columnas opcionales al reporte

1. Ingresamos a Toba Editor: Buscamos el cuadro que se encuentra en PROYECTO > Matrícula > Reportes > Reporte de alumnos. Luego dentro de la pestaña columnas creamos el campo en el cuadro (72000002) para que se vea en la tabla Ejemplo: "usuario"

2. Dentro del archivo php/operaciones/matriculas/alumnos/ci_rep_alumnos.php Agregar items en la función get_opciones_columnas_optativas():

['valor' => 'usuario', 'descr' => 'Usuario','metodo'=>'get_columna_dinamica_usuario'],

3. Dentro de co_alumnos.php creamos la función nombrada en el item anterior Ej: function get_columna_dinamica_usuario(&$select, &$from,&$where) - Indicamos en las variables &$select, &$from,&$where la logica que queremos que tenga Ej :

/*
 * Este metodo es utilizado exclusivamente en el Reporte de alumnos
 */

function get_columna_dinamica_usuario(&$select, &$from,&$where)
{
        $select_metodo = " mdp_personas.usuario ";
        $select = ($select == '1') ? $select_metodo : $select . ' , ' . $select_metodo;
}


  • Vista preliminar de como quedaria el reporte.

Usuario.png