• IMPORTAR HISTORIA A OPENKM

  • Hemos intentado hacer de OpenKM una aplicación lo más intuitiva posible, sin embargo siempre viene bien algún consejo.
Hemos intentado hacer de OpenKM una aplicación lo más intuitiva posible, sin embargo siempre viene bien algún consejo.
Forum rules: Por favor, antes de preguntar algo consulta el wiki de documentación o utiliza la función de búsqueda del foro. Recuerda que no tenemos una bola de cristal ni poderes mentales, o sea que que para informar sobre un error es necesario que nos indiques tanto la versión de OpenKM que usas como la del navegador y sistema operativo. Para más información consulta Cómo informar de fallos de forma efectiva.
 #39346  by diehx
 
Deseo importar a OpenKM la historia y los documentos que tenia en un manejador de documentos propio, como puedo accder a la estructura de la base de datos de openkm para poder importar mis datos anriguos, supongo que ese seria el metodo a seguir o si me pueden aconsejar sobre unn metodo distinto para subir mis documentos y la historia relacionada se los agradecera, de antemano gracias
:D
 #39362  by jllort
 
Yo no te aconsejaría esta metodología, hay formas mas eficientes y mas seguras. Lo primero un par de preguntas:
1- quieres importar el historico de los documentos o solo la ultima versión ?
2- tienen metadatos los ficheros ? categorías / palabras clave etc...
3- hay que conservar la fecha de los documentos ( de cuando fueron creados y por quien ? )
4- hay que conservar los privilegios que tenían en el otro sistema ?
5- hay que conservar los datos del usuario que los creo ?

En tu sistema como puedes acceder a los datos ( solo por base de datos ? tiene un api ? y si tiene api con que lenguaje se puede atacar, lo deseable es que fuese algo con Webservices).

Como más respuestas afirmativas mas complicado es de hacer, en función de lo que me respondas te daremos varias opciones.
 #39417  by diehx
 
respuesta a cada pregunta:
1. deseo importar solo la ultima version de cada documento
2. los ficheros no tienen metadatos como tal, solo campos de tabla basicos, mando un ejemplo:
ESTA ES LA TABLA PRINCIPAL, DONDE SE GUARDAN LOS DATOS DEL DOCU QUE SE GUARDA:
Code: Select all
IdRecepcionDocumento,NumDoc,Estado,FechaDocumento,FechaRecepcion,Observaciones,Documento,QnaAprocesar,QnaProc,TotalDocumentos,PuestoAgenda,Asunto,IdAgenda,Area,NumDocRes,Tipo,Usuario,NivelAdmvo
201500001,108/15 ,3,00:00.0,00:00.0,,3,1503,1503,10,1,SE ANEXA ARCHIVO IMPRESO Y ELECTRONICO CONTENIENDO 466 CASOS DE PERSONAL QUE CAUSARON BAJA POR JUBILACION,262,2,NULL,E,luz     ,NULL
201500002,010/15 ,3,00:00.0,00:00.0,,1,1503,1503,14,1,SE SOLICITA REEXPEDICION DE CHEQUES DE PENSION ALIMENTICIA,262,2,NULL,E,luz     ,NULL
201500003,107/15 ,3,00:00.0,00:00.0,SE ANEXA CD,1,1503,1503,3,1,"SE SOLICITA PROCESAR EL PAGO DE LA ""BECA DE APOYO A LA PRACTICA INTENSIVA Y AL SERVICIO SOCIAL",262,2,NULL,E,luz     ,NULL
201500004,101/15 ,4,00:00.0,00:00.0,,1,1503,1503,1,1,SE SOLICITA INFORMACION DEL C. JUAN ANDRES ROBLES JIMENEZ,262,2,NULL,E,luz     ,NULL
201500005,003/14 ,4,00:00.0,00:00.0,,1,1503,1503,5,1,SE SOLICITA EL PAGO DE LA QNA. 24/2014 AL C. CASTRO ESPINOZA CUAUHTEMOC HECTOR,262,2,NULL,E,luz     ,NULL
201500006,S/N    ,3,00:00.0,00:00.0,NULL,6,NULL,NULL,1,89,SE SOLICITA MANTENIMIENTO  E INSTALACION DE PROGRAMAS AL EQUIPO DE COMPUTO,265,3,NULL,E,luz     ,NULL
201500007,911/14 ,3,00:00.0,00:00.0,,1,1503,1503,2,5,SE KJUSTIFICA LA ELABORACION DE CLAVES PRESUPUESTALES,208,2,NULL,E,luz     ,NULL
ESTA ES LA TABLA QUE LIGA UN DOCUMENTO CON OTROS USANDO EL IDRECEPCIONDOCUMENTO
Code: Select all
Archivo,IdRecepcionDocumento
IMA047522,201500083
IMA047523,201500082
IMA047524,201500081
IMA047525,201500080
IMA047526,201500079
IMA047527,201500078
IMA047528,201500077
IMA047530,201500075
IMA047531,201500074
IMA047533,201500072
IMA047534,201500029
IMA047535,201500028
IMA047537,201500026
IMA047538,201500025
IMA047540,201500023
IMA047541,201500022
IMA047543,201500020
IMA047544,201500019
IMA047545,201500018
IMA047546,201500017
IMA047547,201500016
IMA047548,201500071
IMA047576,201500069
IMA047577,201500069
IMA047578,201500069
IMA047579,201500069
IMA047580,201500069
IMA047581,201500069
IMA047582,201500069
IMA047583,201500069
IMA047584,201500069
IMA047585,201500069
IMA047586,201500069
IMA047587,201500069
IMA047588,201500069
IMA047589,201500069
IMA047590,201500069
IMA047591,201500069
IMA047592,201500069
IMA047593,201500069
IMA047594,201500069
IMA047595,201500069
IMA047596,201500069
IMA047597,201500068
IMA047598,201500068
IMA047599,201500068
IMA047600,201500068
IMA047601,201500068
IMA047602,201500068
IMA047603,201500068
IMA047604,201500068
IMA047605,201500068
IMA047606,201500068
IMA047607,201500068
IMA047608,201500068
IMA047622,201500066
Y ESO ES BASICAMENTE TODO

3. la fecha de los documentos esta guardada en las tablas de la base de datos
4. no existen privilegios especificos
5. conservar datos de usuario, pero esto es solo un nombre y no mas

No se si necesites mas info pero eso es basicamente lo que necesito subir a openkm y poder enlazar los documentos entre si
 #39418  by diehx
 
por cierto que el estado se refiere solo a si el documento ha sido procesado o cual es su estado en proceso, pendiente o procesado
 #39419  by diehx
 
estaba pensando si seria buena idea crear unas tablas de metadatos para integrar esos datos pero bueno, estoy a sus ordenes, que opcion creen que sea mas viable, o mas adecuada, o la correcta, jejejejeje. un saludo y gracias por la atencion
 #39436  by jllort
 
- Fase uno
Quieres conservar la fecha de creación y el usuario que lo ha creado o esto no es necesario -> el segundo caso es el sencillo.

Los documentos binarios, los tienes en el disco duro con su nombre y tal ? estan en carpetas o te interesa meterlos en carpetas ? de cuantos ficheros estamos hablando ? la fecha de los ficheros, si estan en el disco duro es la correcta verdad ?

- Fase dos
Sobre los datos, los tienes que guardar como metadatos en openkm, pero eso ya te lo explico al final de todo.

Mi consejo es que te vayas bajando el entorno de desarrollo http://sourceforge.net/projects/openkmportabledev/ ( te manejas bien con java o con otro lenguage tipo .net o php ? -> porque para meter los metadatos tendras que iteras los valores actuales de la tabla esta y atacar el api, es algo muy sencillo ). Pero mejor vamos paso a paso, de esto hablamos al final de todo, mas que nada te lo comento ahora para que te vayas preparando y pensando.
 #39529  by diehx
 
* solo necesito conservar los datos de las tablas y estos ya incluyen fecha y usuario, necesito conservar esos datos, los usuarios solo han sido 3 maximo en ese periodo, lo de la fecha que sea la misma la del archivo que la de la tabla, debo revisarlo, pero en teoria es la misma
* los archivos estan en disco duro como jpg, y no existen en carpetas separadas, van a una sola ubicación
* en total son aproximadamente 35000 arcivos jpg cuyo nombre es IMG + num consecutivo
 #39546  by jllort
 
Cuando dices que van todos a la misma ubicación a que te refieres ? que lo vas a poner todos en una misma carpeta ? no es una gran idea, has renderizado alguna vez mas de 2000 objectos en una tabla ? imaginate 35.000 ( mala idea ). si no esta separado por carpetas ( confirmamelo ) hay que segmentarlo un poco ( por ejemplo a partir del nombre del documento ): 047522 -> lo ubicas en la carpeta okm:root/04/75/22 o /okm:root/0/4/7/5/2/2 ( esto es muy fácil de hacer con una tarea del automation, basada en la creación del documento ). Pero bueno confirmame que este es tu caso

La fecha yo la actualizaría con un pequeño script despues de haber importado los ficheros, creo que es lo mas sencillo ).
 #39550  by diehx
 
no hay problema por la segmentacion que comentas, en el caso de la base que tenemos actualmente, eso no fue necesario, pero porsupuesto que se puede guardar asi como indicas, la mayor parte de los documentos antiguos estan como su nombre lo indica, como historia. honestamente la mayor parte de las veces solo se consultan los documentos mas recientes. por lo de la fecha, no tiene nada que ver la fecha de la tabla con la fecha de creacion del documento, son cosas distintas, laa fecha del binario en si, cuando se genero no tiene ninguna uso/funcion en las tablas

pd. ya baje el entorno de desarrollo que me comentaste antes.
 #39566  by jllort
 
Antes de subir los ficheros, lo que tienes que hacer es un script para catalogarlos, esto lo mas sencillo es hacerlo con scripting.

creas una carpeta /okm:root/temp
subes 20-30 ficheros alli

Creas un script de la siguiente forma:
Code: Select all
import com.openkm.api.*;
import com.openkm.bean.*;

for (Document doc : OKMDocument.getInstance().getChildren(null, "/okm:root/temp")) {
  print(doc.getPath()+"<br/>");
}
para mover tienes el metodo
Code: Select all
OKMDocument.getInstance().move(null, doc.getPath, "carpeta destino");
Tendras que calcular la carpeta de destino en base al nombre del documento.

Y también crear las carpetas para esto tienes un metodo que te va a vernir muy bien ( que te creará las rutas que te falten ):
Code: Select all
OKMFolder.getInstance().createMissingFolders(null, "carpeta destino");
 #39588  by diehx
 
estoy inciando con los scripts que me pasaste y hare unas pruebas, aun no logro hechar a andar el entorno de desarrollo :)
 #39600  by jllort
 
para el entorno de desarrollo añade otro post.
 #39610  by diehx
 
he bajado el openkm-dev que me indicaste y lo estoy instalando en mi pc con windows 7 pero me detuve en la siguiente instruccion porque nomas no se que quiere decir, si me pudieras indicar que deo hacer porque a partir de aqui estoy detenido. estoy siguiendo las instruicciones que vienen en el readme de la carpeta de instalacion.

-- BEFORE FIRST START UP
------------------------
After build OpenKM running the configuration called "Build openkm 6.3"

donde o como se corre ese build openkm 6.3

P.D. creo que ya le encontre es parte del eclipse debug del maven build verdad?
p.d si era del run configurations. andaba perdido
 #39612  by diehx
 
hola que tal? estoy trabajando con la RDBMS que trae por default openKM, me recomendarias migrar a mysql o que opinas de continuar trabajando con HSQLDB?

p.d segun leí, despues de montar el openkm y que este funcionando, no es buena idea, pero esta apenas lo estoy configurando, que opinas?
 #39625  by jllort
 
Cambiarlo a mysql sin ninguna duda si lo pones en producción.

Y sobre el build, en el eclipse tienes una tarea para hacer el build y para arrancar el tomcat en servers, que ya te viene configurado. A veces el tomcat no arranca bien a la primera desde el openkm, vete a la carpeta de servers y dale al f5 para refrescar, esto te tendría que ayudar. Y acuerdate antes de arrancar la aplicación que tienes que arrancar la mysql.

About Us

OpenKM is part of the management software. A management software is a program that facilitates the accomplishment of administrative tasks. OpenKM is a document management system that allows you to manage business content and workflow in a more efficient way. Document managers guarantee data protection by establishing information security for business content.