protected virtual ListViewItem GetNewNivelItem(NivelRule.NivelDocumentalListItem item)
        {
            ListViewItem lvItem = new ListViewItem();
            
            lvItem.ImageIndex = SharedResourcesOld.CurrentSharedResources.NivelImageBase(item.GUIOrder);
            lvItem.StateImageIndex = 0;
            lvItem.SubItems.AddRange(new string[] { string.Empty, string.Empty, string.Empty, string.Empty });
            lvItem.Tag = GisaDataSetHelper.GetInstance().Nivel.Select("ID="+item.IDNivel.ToString())[0];

            lvItem.SubItems[this.colID.Index].Text = item.IDNivel.ToString();
            lvItem.SubItems[colDesignacao.Index].Text = item.Designacao;
            lvItem.SubItems[colDataProducao.Index].Text = GISA.Utils.GUIHelper.FormatDateInterval(
                item.InicioAno, item.InicioMes, item.InicioDia, item.InicioAtribuida,
                item.FimAno, item.FimMes, item.FimDia, item.FimAtribuida);
            
            return lvItem;
        }       
        private string CollectTextAutosEliminacaoDocumentos(NivelRule.UnidadeFisicaAssociada uf)
		{
			GISADataset.SFRDAvaliacaoRow sfrdAvaliacaoRow = null;
			Hashtable aeRowsHT = new Hashtable();
            List<long> niveisDoc = new List<long>();
            
            if (UfsDocsAssoc.ContainsKey(uf.IDNivel))
                niveisDoc.AddRange(UfsDocsAssoc[uf.IDNivel]);
            if (UfsSeriesAssoc.ContainsKey(uf.IDNivel))
                niveisDoc.AddRange(UfsSeriesAssoc[uf.IDNivel]);

			// obter referencias aos autos de eliminacao dos documentos
			foreach (long docID in niveisDoc)
			{
                NivelRule.DocumentoAssociado doc = (NivelRule.DocumentoAssociado)DocumentosAssociados[docID];
				// Apenas considerar niveis documentais. A associação de UFs associadas a níveis 
				// estruturais é irrelevante na selecção.
				if (doc.IDTipoNivelRelacionado >= TipoNivelRelacionado.SR)
				{
                    sfrdAvaliacaoRow = AvaliacaoDocs[docID];
					if (sfrdAvaliacaoRow.AutoEliminacaoRow != null)
						aeRowsHT[sfrdAvaliacaoRow.AutoEliminacaoRow] = sfrdAvaliacaoRow.AutoEliminacaoRow;
				}
			}

			System.Text.StringBuilder autosEliminacaoDocumentos = null;
			foreach (GISADataset.AutoEliminacaoRow aeRow in aeRowsHT.Values)
			{
				if (autosEliminacaoDocumentos == null)
					autosEliminacaoDocumentos = new System.Text.StringBuilder();
				else
					autosEliminacaoDocumentos.Append("; ");

				autosEliminacaoDocumentos.Append(aeRow.Designacao);
			}

			if (autosEliminacaoDocumentos == null)
				return string.Empty;
			else
				return autosEliminacaoDocumentos.ToString();
		}
		private string CollectTextAutosEliminacaoRestantes(NivelRule.UnidadeFisicaAssociada uf)
		{
			GISADataset.FRDBaseRow[] frdRows = null;
			GISADataset.FRDBaseRow frdRow = null;
            GISADataset.NivelRow nRow = null;
            nRow = (GISADataset.NivelRow)GisaDataSetHelper.GetInstance().Nivel.Select("ID=" + uf.IDNivel.ToString())[0];
			Hashtable aeRowsHT = new Hashtable();

			// obter referencias aos autos de eliminacao das unidades físicas
			frdRows = nRow.GetFRDBaseRows();
			if (frdRows.Length > 0)
				frdRow = getFRDUnidadeFisica(frdRows);

			if (frdRow != null)
			{
				foreach (GISADataset.SFRDUFAutoEliminacaoRow sfrdaeRow in frdRow.GetSFRDUFAutoEliminacaoRows())
					aeRowsHT[sfrdaeRow.AutoEliminacaoRow] = sfrdaeRow.AutoEliminacaoRow;
			}

			System.Text.StringBuilder autosEliminacaoRestantes = null;
			if (frdRow != null)
			{
				foreach (GISADataset.AutoEliminacaoRow aeRow in aeRowsHT.Values)
				{
					if (autosEliminacaoRestantes == null)
						autosEliminacaoRestantes = new System.Text.StringBuilder();
					else
						autosEliminacaoRestantes.Append("; ");
					autosEliminacaoRestantes.Append(aeRow.Designacao);
				}
			}

			if (autosEliminacaoRestantes == null)
				return string.Empty;
			else
				return autosEliminacaoRestantes.ToString();
		}
        private ListViewItem AddSelUnidadeFisicaToList(NivelRule.UnidadeFisicaAssociada uf)
		{
            ListViewItem item = new ListViewItem();
            for (int i = 0; i < lvwSeleccaoUnidadesFisicas.Columns.Count; i++)
                item.SubItems.Add(string.Empty);

            item.Tag = uf.IDNivel;
            item.SubItems[chSelUFCodigoParcial.Index].Text = uf.Codigo;
            item.SubItems[chSelUFDesignacao.Index].Text = uf.Designacao;
            item.SubItems[chSelUFAutosEliminacaoDocumentos.Index].Text = CollectTextAutosEliminacaoDocumentos(uf);
            item.SubItems[chSelUFAutosEliminacaoRestantes.Index].Text = CollectTextAutosEliminacaoRestantes(uf);

            return item;
		}
        private ListViewItem AddUnidadeFisicaToList(NivelRule.UnidadeFisicaAssociada uf)
		{
            ListViewItem item = new ListViewItem();
            for (int i = 0; i < lvwUnidadesFisicas.Columns.Count; i++)
                item.SubItems.Add(string.Empty);

            item.Tag = uf.IDNivel;
            item.SubItems[chUFCodigo.Index].Text = uf.Codigo;
            item.SubItems[chUFDesignacao.Index].Text = uf.Designacao;
            item.SubItems[chUFDatasProducao.Index].Text = 
                GISA.Utils.GUIHelper.FormatDateInterval(uf.InicioAno, uf.InicioMes, uf.InicioDia, uf.FimAno, uf.FimMes, uf.FimDia);
            if (UfsDocsAssoc.ContainsKey(uf.IDNivel))
                item.SubItems[chUFNumDocumentos.Index].Text = UfsDocsAssoc[uf.IDNivel].Count.ToString();
            else
                item.SubItems[chUFNumDocumentos.Index].Text = string.Empty;

            return item;
		}
        private ListViewItem addDocumentoToList(NivelRule.DocumentoAssociado doc)
		{
            ListViewItem item = new ListViewItem();
            for (int i = 0; i < lvwDocumentos.Columns.Count; i++)
                item.SubItems.Add(string.Empty);

            item.Tag = doc.IDNivel;
            item.Text = doc.Designacao;
            item.SubItems[chDocSerieSubserie.Index].Text = doc.DesignacaoUpper;
            item.SubItems[chDocDatasProducao.Index].Text =
                GISA.Utils.GUIHelper.FormatDateInterval(doc.InicioAno, doc.InicioMes, doc.InicioDia, doc.FimAno, doc.FimMes, doc.FimDia);

            GISADataset.NivelRow [] nRows = (GISADataset.NivelRow[])GisaDataSetHelper.GetInstance().Nivel.Select("ID=" + doc.IDNivel);
            Debug.Assert(nRows.Length == 1);

            GISADataset.SFRDAvaliacaoRow frdAvaliacaoRow = null;
            frdAvaliacaoRow = getAvaliacao(nRows[0]);

            Debug.Assert(frdAvaliacaoRow != null);

            item.SubItems[chDocDestino.Index].Text = GUIHelper.GUIHelper.formatDestinoFinal(frdAvaliacaoRow);
            item.SubItems[chDocPublicado.Index].Text = TranslationHelper.FormatBoolean(frdAvaliacaoRow.Publicar);
            item.SubItems[chDocAutoEliminacao.Index].Text = GUIHelper.GUIHelper.formatAutoEliminacao(frdAvaliacaoRow);

            if (!AvaliacaoDocs.ContainsKey(doc.IDNivel))
                AvaliacaoDocs.Add(doc.IDNivel, frdAvaliacaoRow);

            lvItemsDocumentos.Add(doc.IDNivel, item);

            return item;
		}
Beispiel #7
0
		public static void ClearCurrent() 
		{
			current = null;
		}
Beispiel #8
0
 public static void ClearCurrent()
 {
     current = null;
 }