Page 1 of 1

Formularios PDF & Metadatos

PostPosted:Sun Jan 01, 2017 6:39 pm
by gdeldago
Estimados compañeros,

Estoy trabajando en un formulario PDF que será rellenado fuera del entorno openKM, de hecho los usuarios puede que no se encuentren conectados a la red.

La idea es que cuando estos documentos se suban al openKM los campos del formulario PDF se "copien" sobre los metadatos de un grupo de propiedades determinado.

¿Es posible hacer esto ? en ese caso ¿por donde debería comenzar?

Muchas gracias,
Gsutavo

Re: Formularios PDF & Metadatos

PostPosted:Mon Jan 02, 2017 4:13 pm
by jllort
Si lo entiendo, lo que quieres es parsear el documento PDF una vez generado para capturar los metadatos ?

Re: Formularios PDF & Metadatos

PostPosted:Mon Jan 02, 2017 4:23 pm
by gdeldago
Exactamente.

Gustavo

Re: Formularios PDF & Metadatos

PostPosted:Tue Jan 03, 2017 8:00 am
by jllort
No te recomiendo esta forma de solucionarlo. Igual lo mas sencillo es crear el documento PDF + metadatos directamente desde OpenKM. Parsear un documento es siempre mucho mas problemático. Yo le veo dos opciones:

1- Fíjate que desde OpenKM puedes poner el fichero + metadatos en las plantillas y tienes la opción de crear desde plantilla en el menú contextual. Esta llamada también podría realizarse a través del API ( si el método no esta expuesto, es relativamente fácil de exponerlo ).

2- Cuando creas el documento tienes que guardar en algún sitio los metadatos ( una base de datos o donde sea ), para que cuando subas el documento a OpenKM le puedas añadir los metadatos ( esto lo harías a través del API con el SDK4J, .net , php o directamente atacando el rest aquí tienes los sdk disponibles https://docs.openkm.com/kcenter/ ).

No te aconsejo parsear documentos cuyos datos ya tienes previamente, es poco eficiente. A parte que cualquier captura de datos supone siempre un posible error. Si los datos ya los tienes desde un formulario, o la lógica que tengas montada, es mucho mejor almacenarlos y procesarlo todo de forma lineal.

Esto tiene varias formas de solucionarse, desde que todo el proceso vaya con un formulario y sea todo lineal contra openkm, hasta que los datos se almacenen en un BD temporal para despues ser utilizados a la hora de establecer los metadatos o subir el documento PDF + csv que tenga los metadatos etc... Mi sugerencia es que cuanto mas sencillo mejor. Lo ideal seria que desde el propio formulario ya creases el documento en OpenKM ( todo depende de lo complicada que sea tu plantilla y de como quede el formato final, hay que evaluar si el modelo de plantillas de OpenKM es suficiente para ti o no ? pégale un ojo aquí https://wiki.openkm.com/index.php/Templates )

Re: Formularios PDF & Metadatos

PostPosted:Tue Jan 03, 2017 3:26 pm
by gdeldago
Hola,

Muchas gracias por la pronta y detallada respuesta.

He utilizado (con éxito) el método de crear los archivos PDF directamente desde openKM (utilizando templates). Una forma muy útil para tener los metadatos y el generar el docuemnto PDF con los campos cargados de manera automática.

En la situación actual tengo dos problemas para utilizar este enfoque:

1) Los usuarios podrían estar desconectados de la red.
2) Los formularios tienen grana cantidad de campos tipo (check box) y los operadores conocen el formato en papel. Cuando utilizamos formularios openKM el aspecto (me refiero a lo visual) es sensiblemente diferente.

Por lo anterior se me ocurrió que una posibilidad sería utilziar el parseo de los docuemntos PDF (formularios) ya generados fuera de openKM.

Seguiré estudiando alternativas.

Muchas gracias,
Gutavo

Re: Formularios PDF & Metadatos

PostPosted:Wed Jan 04, 2017 11:23 am
by jllort
Me imagino que a los usuarios, esten o no conectados a la red en algun momento les estas mostrando un formulario para rellenar ( alguna aplicacion ). En este escenario un tanto particular que tienes lo que yo intentaría hacer es crear el documento nombre.PDF + nombre.CSV. Y luego importar este documento PDF y utilizar el fichero CSV para poner los metadatos. Esto es bastante fácil de hacer.

Aquí tienes un ejemplo que te puede dar ideas sobre este tema ( modificando ,mínimamente la lógica creo que lo tienes hecho ). La idea seria una carpeta donde los ficheros PDF tengan siempre un fichero CSV con el mismo nombre pero solo cambiando la extensión.
https://wiki.openkm.com/index.php/CSV_importer