Page 1 of 2

Subir la versión de Documentos en Enteros 1->2 en workflow

PostPosted:Tue Oct 28, 2014 1:59 pm
by sandertaker
Buenas nuevamente tengo una duda, en esta ocasión es para modificar la versión del documento que estoy trabajando en OpenKM usando solo versiones mayores cuando ejecuto un workflow.
Cuando yo quiero encontrar la version de mi documento hago lo siguiente, suponiendo que el documento es doc version 1.4:
Code: Select all
String docPath, token, versionNueva;
Document doc = OKMDocument.getInstance().getProperties(token, docPath);
versionNueva = OKMDocument.getInstance().getProperties(tok, docP).getActualVersion().getName();
Lo que me deja en la versión 1.4, con lo cual da vueltas en el workflow y al finalizar sube a la versión 1.5, lo cual es lógico, ahora lo que quiero hacer es subir a la versión 2.0 o 3.0 según corresponda, cada vez que se ejecuta el workflow de forma correcta.
Para ello intenté lo siguiente
Code: Select all
String versionNueva= OKMDocument.getInstance().getProperties(tok, docP).getActualVersion().getName();

//ocupo versionNueva2 para transformar y poder redondear la variable
double versionNueva2=Float.valueOf(versionNueva);			
versionNueva2=Math.ceil(versionNueva2);

//acá devuelvo la version el valor redondeado como string
String versionNueva = String.valueOf(versionNueva2);

Cuando veo las salidas por consola no hay problemas, de hecho redondea la versión a la 2.0 o 3.0 según corresponda, sin embargo no he podido hacer que guarde la versión 2.0.

Saludos

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Fri Oct 31, 2014 7:44 am
by jllort
El número de versión no lo puedes poner manualmente, sino que siempre pasa por una clase que es la que se encarga de gestionar la numeración. Esto se hace durante la operación de checkin, fíjate en la API debes tener un par de métodos para realizar el check-in, tambien es importante saber que clase tienes que te establece la numeración.

El método en cuestion es:
Code: Select all
public Version checkin(String token, String docPath, InputStream is, String comment, int increment)
La clase que controla el cambio de versión ( Administración, propiedades de configuración ). Si quieres ver la implementación lo tienes aquí https://sourceforge.net/p/openkm/code/H ... km/vernum/
version.numeration.adapter=com.openkm.vernum.MajorMinorVersionNumerationAdapter
Si llamas el checkin con el valor increment = 0 lo que te va a hacer es que el documento que este en una version 1.7 va a hacer un checkin con una versión 2.0

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Mon Nov 03, 2014 1:49 pm
by sandertaker
Estoy evisando la implementación que tiene el workflow, y la línea que se ocupa para aumentar de version es la siguiente:
Code: Select all
OKMDocument.getInstance().checkin(token, docPath, docIs, comentario);
pero si intento agregar el quinto argumento (donde debo enviar el 0 como integer) me dice que no está permitido el envío de un quinto parametro y que debo borrar uno de los anteriores.

o ¿debo editar el MajorMinorVersionNumerationAdapter.java?

Saludos

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Sat Nov 08, 2014 10:26 am
by jllort
Que versión de OpenKM estas utilizando, porque esto en la vesion 6.3.X este método esta incluido en el api
Code: Select all
public Version checkin(String token, String docPath, InputStream is, String comment, int increment)

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Mon Nov 10, 2014 12:13 pm
by sandertaker
Lo intenté con la 6.3 y si no me falla la memoria 6.3.1 pero lo más probable es que haya hecho algo mal, cualquier duda pregunto.

Aunque para el desarrollo del workflow ocupo Jboss, y el wf está basado para la versión 6.2.5

Saludos

////////////////////Edito /////////////////////

Este es el mensaje de error que me sale en JBoss, cuando intento modificar el WF para que reciba el quinto parametro que corresponde al entero
Code: Select all
The method checkin(String, String, InputStream, String) in the type OKMDocument is not applicable for the arguments (String, String, InputStream, String, int)
Revisando el OKMDocument.class , por lo menos la versión que tengo ( la cual descargué de la wiki) está definido como
Code: Select all
  public Version checkin(String token, String docPath, InputStream is, String comment)
, así que por ahí creo que está el problema , nosé si habrá un OpenKM-classes.jar más nuevo ya que el de la wiki data del 13 de febrero del 2013, por mientras seguiré buscando

Saludos

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Tue Nov 11, 2014 7:02 pm
by jllort
Tienes que subir a la 6.3, te lo puedo confirmar que esto en la 6.2 no está.

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Tue Nov 11, 2014 7:13 pm
by sandertaker
¿Pero existe un OpenKM-classes.jar de la versión 6.3?

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Sat Nov 15, 2014 9:12 am
by jllort
Lo mejor es que te montes el entorno de desarrollo o que lo hagas a través del OpenKM.war ( exploded del tomcat ). Es bastante facil, te creas una libreria con todo lo que tenga tomcat/OpenKM/lib y añades un class Folder ( eclipse ) de tomcat/OpenKM/web-inf/classes

Para el entorno de desarrollo pégale un ojo aqui http://wiki.openkm.com/index.php/Developer_Guide

Lo de las classes OpenKM-classes.jar en su momento igual fue una idea aceptable, pero tiene varios problemas, sobretodo cuando vamos haciendo cambios en una versión, por eso no hemos sacado mas. De hecho la documentación va a sufrir un cambio radical el año próximo y estamos invirtiendo poco tiempo en la actual, sólo lo indispensable. El año próximo todo esto va a cambiar ( aunque tendreis que esperar a abril - julio para poder ver los resultados, porque el trabajo que hay detras es enorme ).

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Mon Nov 24, 2014 6:33 pm
by sandertaker
Pero el entorno de desarrollo no ha presentado cambios?, por que se ve como desfasado y por lo mismo existe el temor de que no funcione en realidad como se ha descrito en ese tutorial.

Saludos

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Wed Nov 26, 2014 12:33 pm
by jllort
En principio el entorno de desarrollo es el mismo. Lo único que cambia es la url del proyecto a descargarte y nada mas. El resto continua igual que en la version 6.2.5, por eso no hemo añadido o modificado nada con respecto al anterior. Tengo algún dia en el que pienso que igual estaría bien descargarse un zip con el eclipse y el workspace ya configurado, y entonces pienso en que faltaría el java también y allí me freno.

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Tue Dec 09, 2014 1:03 pm
by sandertaker
Sigue sin quedarme del todo claro como importar la versión openkm 6.3 a mi entorno de desarrollo, y en la solución que me das no encuentro "tomcat/OpenKM/lib".

No habia respondido antes por cuestiones de trabajo, ocupado con otras cosas que demandaron más atención de mi parte

//////////////////Edito //////////////////////////////////

Hice lo que me dijiste, ¿esto se supone que debería reemplazar el importar el proyecto completo de OpenKM ?

Por el momento no he podido hacerlo andar, apenas pueda aviso como va.


Saludos

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Wed Dec 10, 2014 5:52 pm
by jllort
A ver si has instalado openkm tienes un directorio que es el tomcat, dentro esta el webapps/OpenKM/lib etc... El OpenKM.war cuando se deploya descomprime todo el contenido en una carpeta OpenKM

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Wed Dec 10, 2014 8:16 pm
by sandertaker
Configuré Jboss y todo funciona, pude enviar el quinto argumento en el checkin, en este caso el 0 para que suba de versión, sin embargo sigue subiendo de 0.1 en 0.1 al finalizar el workflow
//////////////////Edito//////////////

El argumento que hay que enviarle es 1 y no 0, ahí cambia de versión de 1 en 1 (para el que le sirva), sin embargo me borra los comentarios de la versión ( los resetea)

Saludos

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Fri Dec 12, 2014 5:46 pm
by jllort
o sea que cuando subes de la version 1.1 ( que tienes comentarios ) a la 1.2 , se borran los comentarios de la 1.1 ?

Re: Subir la versión de Documentos en Enteros 1->2 en workfl

PostPosted:Fri Dec 12, 2014 6:57 pm
by sandertaker
para que se entienda funciona así el workflow siguiendo mas menos los datos que tiene para que se entienda: documento, versión, comentario.
Primero subo un documento que se llama "prueba.doc - 1.0 - REV A" cuando termina de ejecutar el workflow o lo que es lo mismo completa la vuelta termina como "prueba.doc - 1.1 - REV B" y así sucesivamente con la REV.. pasando de la A, a la B a la C. etc.

Cuando modifico el workflow con el quinto parametro es de la siguiente forma "prueba.doc - 1.0 - REV B" y de eso pasa a "prueba.doc - 2.0 - REV B" y luego "prueba.doc - 3.0 - REV B" siendo que solo con los 4 parametros si aumenta la letra en cuestión y es lo único que he tocado.

Saludos