Proyecto

General

Perfil

Generador de código por XML

Información

Autor Noly Quintero
Sitio Web
Repositorio
Código fuente
Versión Actual v1.0
Compatible con Abox 2.7.7

Resumen

Genera el código del documento o expediente a partir de un XML.

El archivo de configuración se debe llamar "GenericXMLCodeGenerator.xml" y debe estar inmediatamente dentro de la carpeta DATA:

<?xml version="1.0" encoding="utf-8"?>
<codeGenerator>
  <documentTypes in="IN" out="OUT" normal="" year="2012" separator="." month="true" day="day">
    <documentType code="DOCTYPE_1">
      <currentCode>
        <normal>1</normal>
        <in>1</in>
        <out>1</out>
      </currentCode>
      <numberOfDigits>5</numberOfDigits>
    </documentType>
    <documentType code="DOCTYPE_2">
      <currentCode>
        <normal>1</normal>
        <in>1</in>
        <out>1</out>
      </currentCode>
      <numberOfDigits>4</numberOfDigits>
    </documentType>
    <default code="DOCTYPE_DEFAULT">
      <currentCode>
        <normal>1</normal>
        <in>1</in>
        <out>1</out>
      </currentCode>
      <numberOfDigits>5</numberOfDigits>
    </default>
  </documentTypes>
  <caseFolderTypes separator="-" year="2012">
    <caseFolderType code="EXPTYPE_1">
      <currentCode>0</currentCode>
      <numberOfDigits>4</numberOfDigits>
    </caseFolderType>
    <caseFolderType code="EXPTYPE_2">
      <currentCode>0</currentCode>
      <numberOfDigits>4</numberOfDigits>
    </caseFolderType>
    <default code="EXPTYPE_DEFAULT">
      <currentCode>0</currentCode>
      <numberOfDigits>5</numberOfDigits>
    </default>
  </caseFolderTypes>
</codeGenerator>

Este generador de códigos busca entre los tipos definidos en el XML cual corresponde para así calcular su consecutivo, sino encuentra ninguno que corresponda calculará el consecutivo a partir de la etiqueta default.

Para definir el formato del código en el XML se debe tener en cuenta:

  • El orden en que se definan los atributos sera el orden en el que se creará el código.
  • Los atributos in, out, normal solo se pueden definir para el caso de los documentos. Estos definen en su valor una constante que llevara el código dependiendo el modo del documento a crear. Por ejemplo si el documento que se esta creando es de modo entrada, solo tendrá en cuenta el atributo in, los otros los obviará.
  • Los atributos month y day sirven para colocar el mes actual y día actual respectivamente en el código del documento o expediente a crear. Estos deben llevar en su valor "true" para que se muestren, en cualquier otro caso es obviada. Las fechas siempre se incluyen de dos dígitos.
  • El atributo year, define si se desea que el contador de los tipos de documentos y expedientes se reinicie cada vez que pasa el año (year="2013" (Año actual)). Si se desea que fuese un contador único se deja vació (year=""). Ademas este atributo también se incluye al formar el código, con dos dígitos.
  • El atributo prefix puede definir una constante en el código a crear (prefix="TEXTO"), el código del tipo documental (prefix="[code]") o en su defecto puede estar vacío (prefix="").
  • El atributo separator, define cual es el caracter de separación que habrá entre atributo y atributo al armar el código. Este puede estar definido en cualquier posición.
  • Para definirle la posición al consecutivo se utiliza el atributo code="" (Puede estar vacío, solo se utiliza para hacer referencia a la posición donde irá).

Para adicionar un nuevo tipo documental se añade otra etiqueta:

    <documentType code="DOCTYPE_1">
      <currentCode>
        <normal>1</normal>
        <in>1</in>
        <out>1</out>
      </currentCode>
      <numberOfDigits>5</numberOfDigits>
    </documentType>

Donde:
code: Es el código del tipo de documento
currentCode: Es el consecutivo por el cual va, dependiendo si es normal, entrada o salida.
numberOfDigits: Numero de dígitos del consecutivo. p ej: numberOfDigits = 4, entonces si el consecutivo es 15 el código contendrá 0015

Para adicionar un nuevo tipo de expediente se añade otra etiqueta:

    <caseFolderType code="EXPTYPE_1">
      <currentCode>0</currentCode>
      <numberOfDigits>4</numberOfDigits>
    </caseFolderType>

Donde:
code: Es el código del tipo de expediente
currentCode: Es el consecutivo por el cual va.
numberOfDigits: Numero de dígitos del consecutivo. p ej: numberOfDigits = 4, entonces si el consecutivo es 15 el código contendrá 0015

Notas de instalación

Extendiendo Abox para desarrollo:

Descargue el código fuente del plugin y compílelo usando Visual Studio 2010. Luego dependiendo si lo va a integrar en una instalación de Abox o en un proyecto de extensión de Abox sigua las siguientes instrucciones.

Copiar la dll que genera el proyecto, en principio se debe llamar Adapting.GenericXMLCodeGenerator.dll, en la carpeta /bin del sitio web donde esta Abox.

Incluya el proyecto en su proyecto para extender Abox, añada una referencia en Adapting.Web al proyecto que acaba de incluir.

En una instalación de Abox

Descargue la dll compilada llamada Adapting.GenericXMLCodeGenerator.dll en el menú Otros: Versiones de plugins

Incluya la dll en la carpeta bin de su instalación.

Pasos comunes

En el menú de parametrización defina que usará este generador:

Guía de uso

Una vez definido el generador en el menú de paratrización, pestaña document, solo se debe crear el documento o el expediente para comprobar que este creando el código a partir de la configuración del XML.

Historico

Volver al inicio
Agregar imagen desde el portapapeles (Tamaño máximo: 10 MB)