Autor Tema: [SOLUCIONADO]Restricciones funcionales  (Leído 69 veces)

0 Usuarios y 1 Visitante están viendo este tema.

alumno66

  • General
  • *
  • Mensajes: 220
    • Ver Perfil
    • Email
  • Institución: Municipalidad de Corrientes
  • Nombre y apellido: Claudio Ignacio Canzoneri
  • Sistema: toba pilaga
  • Teléfono laboral: 379154347672
[SOLUCIONADO]Restricciones funcionales
« : abril 27, 2017, 10:28:05 am »
Estimados creadores del TOBA.
He observado en el Toba Usuarios, en lo que atañe a las Restricciones Funcionales, que cuando se despliega el árbol a nivel campo para evitar la visualización o edición mediante esta metodología, la lista de campos son íconos sin ninguna referencia a su id. Esto vuelve muy complicada esta tarea.
Espero que mi comentario sea tomado como una crítica constructiva ya que no es mi intención desestimar el trabajo de nadie y menos uno tan complejo como la creación y desarrollo del Toba.
Un cordial saludo.
« Última Modificación: junio 01, 2017, 01:46:28 pm por alumno66 »
Canzoneri, Claudio Ignacio
Municipalidad de Corrientes

richard

  • Moderador Global
  • *****
  • Mensajes: 2380
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: Ricardo Dalinger
  • Sistema: SIU-Toba
Re:Restricciones funcionales
« Respuesta #1 : abril 28, 2017, 04:06:33 pm »
Hola Claudio,

esto les sucede para algun tipo particular de componente?.. en alguna version particular de toba?. La idea es que el arbol de restricciones se deberia ver como en la imagen:

Si la imagen es igual y vos te referis a ver el ID en el formulario en lugar de la etiqueta, te cuento que algun momento se pensó. pero nos pareció mas útil dejar la etiqueta, ya que las restricciones muchas veces no las define un desarrollador, sino un administrador del sistema que no sabe como relacionar el ID interno en el form con lo que ve en pantalla al ejecutar el sistema.

Saludos
Twitter es al incontinente verbal,  lo que los dulces al diabetico.

alumno66

  • General
  • *
  • Mensajes: 220
    • Ver Perfil
    • Email
  • Institución: Municipalidad de Corrientes
  • Nombre y apellido: Claudio Ignacio Canzoneri
  • Sistema: toba pilaga
  • Teléfono laboral: 379154347672
Re:Restricciones funcionales
« Respuesta #2 : mayo 19, 2017, 10:04:20 am »
Hola Richard.
Sí, el problema es que como nosotros, la mayoría de las veces no le ponemos etiqueta dado que le hacemos layout, se presenta el problema.
Bueno. Veremos como hacemos.
Te adjunto imagen para que veas como lo visualizamos.
Abrazo.
« Última Modificación: mayo 19, 2017, 12:09:10 pm por alumno66 »
Canzoneri, Claudio Ignacio
Municipalidad de Corrientes

richard

  • Moderador Global
  • *****
  • Mensajes: 2380
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: Ricardo Dalinger
  • Sistema: SIU-Toba
Re:Restricciones funcionales
« Respuesta #3 : mayo 24, 2017, 12:08:45 pm »
Hola Claudio,

ahora entiendo como viene la mano, creo que tengo una especie de solucion pero van a tener que cargar las etiquetas para los campos.

Mirando el codigo me doy cuenta que se le pueden agregar modificadores al template, que no es unicamente poner el id del ef en cuestion. Es algo que deberia estar documentado como parte de la generacion del template pero por lo visto nunca lo trasladamos del changelog a la doc.

Ademas del ID, se pueden agregar dos modificadores extra (al menos los que veo inicialmente en codigo) que serian:

- etiqueta_mostrar=0   que fuerza a que no se muestre la etiqueta del ef
- etiqueta_ancho=xx que determina el tamaño minimo que debe poseer la etiqueta en la visualizacion.

Resumiento, un template te podria quedar asi:
Etiqueta 1[ef id=nombre etiqueta_ancho=135]
Etiqueta 2[ef id=direccion etiqueta_mostrar=0]

En teoria de esa manera podes mantener las etiquetas en los forms, que te sirve para poder realizar las restricciones funcionales y por otro lado tener tu etiqueta en  el template, tal como la venian manteniendo hasta el momento.

Saludos
Twitter es al incontinente verbal,  lo que los dulces al diabetico.

alumno66

  • General
  • *
  • Mensajes: 220
    • Ver Perfil
    • Email
  • Institución: Municipalidad de Corrientes
  • Nombre y apellido: Claudio Ignacio Canzoneri
  • Sistema: toba pilaga
  • Teléfono laboral: 379154347672
Re:Restricciones funcionales
« Respuesta #4 : mayo 29, 2017, 02:51:43 pm »
Si. Con el asunto de las etiquetas, tal como está, sucede que las pantallas se estiran mucho a lo ancho y no quedan visualmente cómodas.
Suelo ponerles long. de etiqueta 0 y sin etiqueta, para que me ocupe poco o nada de espacio. Con la nueva versión del toba que tengo, tuve que modificar ese detalle y ponerle una  long. de etiqueta mínima de 15 px porque el box editable tapaba el asterisco de obligatorio.
Normalmente no les pongo etiquetas en el objeto del toba y lo manejo con el layout aprovechando el efecto de que al poner texto y definición de ef en la celda de una tabla html, pone el ef_editable debajo del texto y queda algo así: (Imágenes adjuntas).

Hace años les había sugerido poder especificar el ancho de las etiquetas, pero no prosperó.
De todos modos, es posible hacerlo extendiendo el componente y modificando el código.
En mi caso, en uno de los sistemas lo hice así:
Código: [Seleccionar]
class editar_layout_propio extends toba_ei_formulario
{

function generar_layout_template()
{
$ef_etiq_corta = array('ldepsecr','ldepsubs','ldepersu','ldepdire','ldepdpto','ldepdivi');
//Parseo del template
$pattern = '/\[ef([\s\w+=\w+]+)\]/i';
if (preg_match_all($pattern, $this->_info_formulario['template'], $resultado)) {
$salida = $this->_info_formulario['template'];
for ($i=0; $i < count($resultado[0]); $i++) {
$original = $resultado[0][$i];
$atributos = array();
foreach (explode(' ',trim($resultado[1][$i])) as $atributo) {
$partes = explode('=', $atributo);
$atributos[$partes[0]] = $partes[1];
}
if (! isset($atributos['id'])) {
throw new toba_error_def($this->get_txt()."Tag [ef] incorrecto, falta atributo id");
}
               
if (isset($atributos['etiqueta_mostrar']) && $atributos['etiqueta_mostrar'] == 0) {
$etiqueta_mostrar = false;
}
               
if (isset($atributos['etiqueta_ancho'])) {
$etiqueta_ancho = $atributos['etiqueta_ancho'];
}

                $etiqueta_mostrar = true;
if(in_array($atributos['id'],$ef_etiq_corta)){;
                    $etiqueta_mostrar = false;
}

$html = $this->get_html_ef($atributos['id'], $etiqueta_ancho, $etiqueta_mostrar);
               
$salida = str_replace($original, $html, $salida);
}
echo $salida;
} else {
throw new toba_error_def($this->get_txt()."Template incorrecto");
}
}
}
Bueno, ya te di mucha lata y debes estar ocupado.
Saludos.
Canzoneri, Claudio Ignacio
Municipalidad de Corrientes

 

Comunidad SIU