Coge todo el output de los resultados que te aparece en el repository checker y cópialos en un fichero de texto. Elimina todas aquellas filas que no se correspondan con errores.
Cada fila es un documento perdido, de 6902 documentos que deberías tener ( ahí tendras lo que se ha perdido ).
-- Procesando el documento ( vamos a convertir el txt en un CSV ):
- Elimina la cadena final "( El sistema no puede encontrar el archivo especificado )"
- Reemplaza la cadena "->" por una coma
- Renombra el fichero txt como csv
- Abre el fichero con el excel
- Elimina la primera columna ( Ahora deberías tener una única columna con un documento )
En cada fila deberías tener algo parecido a esto ( este comando te termite crear documentos vacios , lo que no estoy totalmente seguro es si te va a crear las carpetas o no, tendrías que hacer una prueba preliminar ):
echo $null >> c:\repository\datastore\6e\c5\b5\ef\6ec5b5ef-b3de-4698-bd17-abf7cb8ea099
- El tema es añadir una primera columna con el texto "echo $null >>"
- Finalmente copias todo el contenido y lo ejecutas desde la terminal ( asegurate antes que el comando es capaz de crear carpetas, es decir toda la ruta, en caso que no sea así, vas a tener unos pasos adicionales ( crear otro excel con las rutas c:\repository\datastore\6e\c5\b5\ef\6ec5b5ef-b3de-4698-bd17-abf7cb8ea099, pero utilizando esta vez el separador \, esto se separará la ruta por niveles y a partir de esto tienes que crear mkdir que vaya creando las carpeta del nivel 1, depués el 2 , etc... un rollo vamos ). No se si en windows existe un comando para crear toda una rura ? lo cual te saldría mas rentable.
El objetivo llegados a este punto es reemplazar los ficheros perdido por otros vacios ( esto te permitirá exportar el repositorio etc... , vamos que el repositorio sea consistente ). Aquí tienes que investigar como han podido borrarse estos ficheros a nivel del SO, porque es la única forma en que cosas de este tipo pueden darse.
-- Finalmente tienes que localizar los ficheros perdidos con el nombre etc..
Code: Select allSELECT NBS_NAME, NBS_UUID FROM OKM_NODE_BASE WHERE NBS_UUID IN ( select NDV_PARENT from OKM_NODE_DOCUMENT_VERSION WHERE NDV_UUID IN ('041f3735-7a75-4d6e-8d4a-71f7c736a483','0586348c-79e8-44ea-bb9f-fd1145d15b09') )
Donde los UUID que ves en la consulta son las versiones de los documentos que coinciden con la parte final de las rutas anteriores. Para entender mejor esta parte puedes ver esta sección de la documentación
https://docs.openkm.com/kcenter/view/ok ... ption.html
También puedes fijarte en las fechas de los documentos ( no será fácil ), para establecer mas o menos cuando se ha producido el problema, intentar localizar la fecha del ultimo documento perdido y del primero que existe ( en proximidad uno con otro ) eso te dará una idea de cuando ha pasado el incidente. El campo de fecha que tienes que utilizar el valor de la tabla OKM_NODE_DOCUMENT_VERSION.