Beispiel #1
0
		private void ClearSearchResults(MasterPanelPesquisa MasterPanel)
		{
			resultNumber = 0;
			this.lblFuncao.Text = "Resultados da pesquisa";
			PesquisaList1.ClearSearchResults();
			ToolBar_ButtonClick(this, new ToolBarButtonClickEventArgs(ToolBarButton2));
			rtfDetalhes.Clear();
			lstImagens.Items.Clear();
            trvODsFedora.Nodes.Clear();
            UFsRelacionadasDataTable.Clear();
			UpdateToolBarButtons();
		}
Beispiel #2
0
		private void ShowSelection(MasterPanelPesquisa MasterPanel)
		{
			ToolBar_ButtonClick(this, new ToolBarButtonClickEventArgs(ToolBarButton2));
			GISADataset.RelacaoHierarquicaRow rhRow = null;

			var ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
			try
			{
				if (MasterPanel.cnList.SelectedRelacaoHierarquica != null)
				{
					rhRow = MasterPanel.cnList.SelectedRelacaoHierarquica;

					if (TipoNivelRelacionado.GetTipoNivelRelacionadoFromRelacaoHierarquica(rhRow).IDTipoNivel != TipoNivel.DOCUMENTAL)
						return;

					PesquisaRule.Current.LoadSelectedData(GisaDataSetHelper.GetInstance(), rhRow.ID, Convert.ToInt64(TipoFRDBase.FRDOIRecolha), ho.Connection);
				}

				// se não existir um nó selecionado para o nivel do nó selecionado ignora-se a chamada a este metodo
				if (rhRow == null)
					return;

				try
				{
					// este teste relevou-se necessário para algumas sequencias de acções faziam o TopLevelControl ser null quando chegavamos a este ponto
					if (TopLevelControl != null)
						((frmMain)TopLevelControl).EnterWaitMode();
					this.lblFuncao.Text = string.Format("selecionado {0}", rhRow.TipoNivelRelacionadoRow.Designacao);
					this.lblFuncao.Update();					

				}
				catch (Exception Ex)
				{
					Trace.WriteLine(Ex);
				}
				finally
				{
					if (TopLevelControl != null)
						((frmMain)TopLevelControl).LeaveWaitMode();
				}
			}
			catch (Exception ex)
			{
				Trace.WriteLine(ex);
				throw;
			}
			finally
			{
				ho.Dispose();
			}
		}
Beispiel #3
0
		private void ExecuteQuery(MasterPanelPesquisa MasterPanel)
		{
			ToolBar_ButtonClick(this, new ToolBarButtonClickEventArgs(ToolBarButton2));

			try
			{
				((frmMain)TopLevelControl).EnterWaitMode();
				this.lblFuncao.Text = string.Format("Resultados da pesquisa (em curso)");
				this.lblFuncao.Update();

				GisaDataSetHelper.HoldOpen ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
				try
				{
					resultNumber = 0;
					bool ShowResults = true;

					long calc = DateTime.Now.Ticks;

					try
					{
						long user = SessionHelper.GetGisaPrincipal().TrusteeUserOperator.ID;
						resultNumber = ExecuteSearch(ho.Connection);
					}
					catch (Exception ex)
					{
                        MessageBox.Show("Não foi possível completar a pesquisa solicitada. " + Environment.NewLine + "Erro: " + ex.Message, "Determinação dos resultados de pesquisa", MessageBoxButtons.OK, MessageBoxIcon.Warning);						
						ShowResults = false;
						Debug.WriteLine(ex);
                        throw;
					}
					Debug.WriteLine("<<cálculo da pesquisa>>: " + new TimeSpan(DateTime.Now.Ticks - calc).ToString());

					if (ShowResults)
					{
						Trace.WriteLine(string.Format("Found {0} results from search server.", resultNumber));

						calc = DateTime.Now.Ticks;
						PesquisaList1.ReloadList();
                        PesquisaList1.NewSearch = false;
                        resultNumber = PesquisaList1.NrResults;

                        Trace.WriteLine(string.Format("{0} results after filter permissions and expired docs.", resultNumber));

						Debug.WriteLine("<<Popular resultados da pesquisa>>: " + new TimeSpan(DateTime.Now.Ticks - calc).ToString());

						this.lblFuncao.Text = string.Format("Resultados da pesquisa ({0} {1})", resultNumber, ((resultNumber == 1) ? "descrição" : "descrições"));
					}
					else
					{
						resultNumber = 0;
						this.lblFuncao.Text = string.Format("Resultados da pesquisa");
					}
				}
				catch (Exception ex)
				{
					Trace.WriteLine(ex);
					this.lblFuncao.Text = string.Format("Resultados da pesquisa");
				}
				finally
				{
					ho.Dispose();
				}
			}
			catch (Exception Ex)
			{
				Trace.WriteLine(Ex);
				this.lblFuncao.Text = string.Format("Resultados da pesquisa");
			}
			finally
			{
				((frmMain)TopLevelControl).LeaveWaitMode();
			}
		}