예제 #1
0
        private string getRuta(string referencia)
        {
            string ruta = "SIN RUTA EN LF";

            try
            {
                LFSearch busqueda = this.db.CreateSearch();
                string   queryLF  = "{LF:ParentName=\"" + referencia + "\"}";
                busqueda.Command = queryLF;
                busqueda.BeginSearch(true);
                ILFCollection archivos = busqueda.GetSearchHits();
                if (archivos.Count > 0)
                {
                    LFSearchHit hit    = (LFSearchHit)archivos[1];
                    ILFEntry    entry  = (ILFEntry)hit.Entry;
                    LFFolder    folder = entry.ParentFolder;
                    ruta = folder.FullPath + @"\";
                }
                busqueda.Dispose();
                return(ruta);
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return(ruta);
            }
        }
예제 #2
0
        public IEnumerable <DocumentoRepositorio> BuscarDocumentosExpediente(IEnumerable <string> referencias, IEnumerable <string> nombreDocumentos)
        {
            //Primero se abre conexion
            //conexionLF.Create((LFDatabase)baseDeDatosLF);

            try
            {
                List <DocumentoRepositorio> resultado = new List <DocumentoRepositorio>();

                //Para cada referencia se buscan los documentos requeridos
                foreach (string referencia in referencias)
                {
                    LFSearch busqueda = baseDeDatosLF.CreateSearch();

                    //Se busca una carpeta con el nombre de la referencia, pero debe estar bajo una carpeta IMPO o EXPO
                    busqueda.Command = "{LF:Name=\"" + referencia + "\",Type=\"F\" } & ({LF:ParentName=\"IMPO\"}|{LF:ParentName=\"EXPO\"})";
                    busqueda.BeginSearch(true);
                    ILFCollection coleccionHitsLF = busqueda.GetSearchHits();


                    foreach (LFSearchHit searchHitLF in coleccionHitsLF)
                    {
                        LFBriefcaseExporter bfex = new LFBriefcaseExporter();
                        bfex.AddFolder(searchHitLF.Entry as LFFolder);

                        ExtraerDocumentos(resultado, referencia, searchHitLF.Entry);
                    }
                }

                return(resultado);
            }catch (Exception exception)
            {
                throw exception;
            }
            finally
            {
                //if (!conexionLF.IsTerminated)
                //{
                //    conexionLF.Terminate();
                //}
            }
            return(null);
        }