Personalización de la ficha de inventario

Hola, en la UNCUYO estamos personalizando la ficha de inventario de bienes patrimoniales. Para aquellos que necesiten hacer lo mismo, les paso una guía de como hacerlo:

Copiar el archivo xsl para modificalo

Lo primero que hay que hacer es copiar los archivos de personalización a una ubicación en la que SIU-Diaguita pueda cargarlos y tomar las modificaciones que hacemos.
A modo de ejemplo vamos a usar la ficha de bienes de patrimonio para llevar a cabo las personalizaciones.
El archivo original se encuentra en la siguiente carpeta, dentro de la instalación de Diaguita:

diaguita/aplicacion/xsl/patrimonio/bien_uso/ci_ficha_bien_uso.xsl

Ese mismo archivo hay que copiarlo y pegarlo en la carpeta:

diaguita/aplicacion/personalizacion/xsl/patrimonio/bien_uso/ci_ficha_bien_uso.xsl

y de este modo ya estamos listo para la personalización (de ahora en más se trabaja sobre este último archivo)

¿Qué datos podemos agregar a la ficha de bienes?

Los datos que tenemos disponibles en la ficha (y en cada impresión personalizable del sistema) se pueden visualizar en forma clara dentro del sistema, usando el menú Ver datos xsl disponibles. Por ejemplo en la ficha de bienes podemos ir a Patrimonio > bienes patrimoniales, seleccionar un bien y en la parte superior derecha se encuentra el menú mencionado anteriormente.
El formato de los datos se muestra en forma de árbol como en el siguiente ejemplo:

bienes_uso > @attributes > valor_bien

Es importante tener en cuenta este detalle ya que nos va a ser útil al momento de querer obtener un datos y mostrarlo en el archivo xsl. Estos datos dentro del archivo se acceden de la siguiente manera:

bienes_uso/@valor_bien

No se asusten, más adelante les muestro un caso de como se verán los datos.

Agregar el logo y nombre de la institución a la ficha de bienes

Vamos a un caso práctico, supongamos que necesitamos mostrar el logo y nombre de la institución en la ficha de bienes:

  • Lo primero que hacemos es buscar el dato que queremos mostrar, usando el menú Ver datos xsl disponibles.
datos_anexos > @attributes > LOGO_INSTITUCION y datos_anexos > @attributes > INSTITUCION 
  • Una vez que tenemos en claro cuales son los datos que usamos, creamos una tabla y cargamos los datos xsl


<fo:table $P__ESTILO{ENC-PRINCIPAL}>
                        <fo:table-column column-width="30mm"/>
                        <fo:table-column column-width="100mm"/>
                        <fo:table-body>
                            <fo:table-row>
                                <fo:table-cell >
                                    <fo:block>
                                        <fo:external-graphic padding-left='30%' content-height='20px'  src="url({datos_anexos/@LOGO_INSTITUCION})"/>
                                    </fo:block>
                                </fo:table-cell>
                                <fo:table-cell>
                                    <fo:block>
                                        <fo:inline $P__ESTILO{ENC-PRINCIPAL}><xsl:value-of select="datos_anexos/@INSTITUCION"/></fo:inline> 
                                    </fo:block>
                                </fo:table-cell>
                            </fo:table-row>
                        </fo:table-body>
                    </fo:table>


Mostrar datos fijos en la impresión

Para mostrar datos fijos en la impresión simplemente creamos un bloque nuevo

<fo:block $P__ESTILO{CABECERA-TABLA}>Mi texto fijo</fo:block>  

Es interesante tener en cuenta que para el espaciado entre tablas, se puede usar:

<fo:block>&#xA0;</fo:block>

Prueba de los resultados

A medida que vamos modificando el archivo xsl, podemos probar los resultados haciendo clic en Ver ficha

Documentos útiles

Acá les dejo una guía de xsl, para que puedan ver las diferentes opciones que permite el lenguaje:

http://www.w3schools.com/xslfo/

Espero que les sirva y cualquier cosa no duden en consultar

Víctor

Muchas Gracias por tu ejemplo práctico!!!
Si algún usuario no puede visualizar el botón “Ver Datos xsl Disponibles”, consulte con sus técnicos para poder saber que campos disponibles existen o si necesitan agregar alguno…
Saludos Victor!!!