private void AddDetalhe(GISADataset.NivelRow nRow, string nCod) { if (detalhes[nRow.ID] == null) { ArrayList aux = new ArrayList(); GISADataset.SFRDDatasProducaoRow sfrddprow = null; string ia = null; string im = null; string id = null; string fa = null; string fm = null; string fd = null; if (nRow.GetFRDBaseRows()[0].GetSFRDDatasProducaoRows().Length > 0) { sfrddprow = (GISADataset.SFRDDatasProducaoRow)(nRow.GetFRDBaseRows()[0].GetSFRDDatasProducaoRows()[0]); if (sfrddprow.IsInicioAnoNull()) ia = ""; else ia = sfrddprow.InicioAno; if (sfrddprow.IsInicioMesNull()) im = ""; else im = sfrddprow.InicioMes; if (sfrddprow.IsInicioDiaNull()) id = ""; else id = sfrddprow.InicioDia; if (sfrddprow.IsFimAnoNull()) fa = ""; else fa = sfrddprow.FimAno; if (sfrddprow.IsFimMesNull()) fm = ""; else fm = sfrddprow.FimMes; if (sfrddprow.IsFimDiaNull()) fd = ""; else fd = sfrddprow.FimDia; } else { ia = ""; im = ""; id = ""; fa = ""; fm = ""; fd = ""; } GisaDataSetHelper.HoldOpen ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection()); try { if (nRow.IDTipoNivel == 3) aux.Add(nRow.GetNivelDesignadoRows()[0].Designacao); else { DBAbstractDataLayer.DataAccessRules.NivelRule.Current.FillNivelControloAutRows(GisaDataSetHelper.GetInstance(), nRow.ID, ho.Connection); if (nRow.GetNivelControloAutRows().Length > 0) aux.Add(nRow.GetNivelControloAutRows()[0].ControloAutRow.GetControloAutDicionarioRows()[0].DicionarioRow.Termo); else if (nRow.GetNivelDesignadoRows().Length > 0) aux.Add(nRow.GetNivelDesignadoRows()[0].Designacao); } aux.Add(nRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica()[0].TipoNivelRelacionadoRow.ID); aux.Add(ia); aux.Add(im); aux.Add(id); aux.Add(fa); aux.Add(fm); aux.Add(fd); aux.Add(nCod); aux.Add("1"); // Se aparece aqui é porque temos permissao... if (MovimentoRule.Current.estaRequisitado(nRow.ID, ho.Connection)) aux.Add(true); else aux.Add(false); } catch (Exception ex) { Trace.WriteLine(ex); throw; } finally { ho.Dispose(); } detalhes.Add(nRow.ID, aux); } }
private bool IsValidRelacaoHierarquica(GISADataset.ControloAutRow ControloAutRow) { if (GisaDataSetHelper.GetInstance().RelacaoHierarquica.Select(string.Format("ID={0} AND IDUpper={1} OR ID={1} AND IDUpper={0}", ControloAutRow.GetNivelControloAutRows()[0].NivelRow.ID, this.FRDBase.NivelRow.ID)).Length > 0) { return false; } return true; }
private void UpdateCA(GISADataset.ControloAutRow caRow) { switch (caRow.IDTipoNoticiaAut) { case (long)TipoNoticiaAut.EntidadeProdutora: GISA.Search.Updater.updateProdutor(caRow.ID); GISA.Search.Updater.updateNivelDocumentalComProdutores(caRow.GetNivelControloAutRows()[0].ID); break; case (long)TipoNoticiaAut.Onomastico: case (long)TipoNoticiaAut.Ideografico: case (long)TipoNoticiaAut.ToponimicoGeografico: GISA.Search.Updater.updateAssunto(caRow.ID); break; case (long)TipoNoticiaAut.TipologiaInformacional: GISA.Search.Updater.updateTipologia(caRow.ID); break; } }
internal static RegistoAutoridadeInterno CreateRegistoAutoridadeInterno(GISADataset.ControloAutRow caRow) { RegistoAutoridadeInterno rai = null; switch (caRow.IDTipoNoticiaAut) { case (long)TipoNoticiaAut.EntidadeProdutora: var produtor = new Model.EntidadesInternas.Produtor(); produtor.Codigo = caRow.GetNivelControloAutRows()[0].NivelRow.Codigo; rai = produtor; break; case (long)TipoNoticiaAut.TipologiaInformacional: var tipologia = new Model.EntidadesInternas.Tipologia(); rai = tipologia; break; case (long)TipoNoticiaAut.Onomastico: var onomastico = new Model.EntidadesInternas.Onomastico(); if (!caRow.IsChaveColectividadeNull()) onomastico.Codigo = caRow.ChaveColectividade; rai = onomastico; break; case (long)TipoNoticiaAut.Ideografico: var ideografico = new Model.EntidadesInternas.Ideografico(); rai = ideografico; break; case (long)TipoNoticiaAut.ToponimicoGeografico: var geografico = new Model.EntidadesInternas.Geografico(); rai = geografico; break; } rai.Id = caRow.ID; rai.Titulo = caRow.GetControloAutDicionarioRows().Where(cad => cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada).Single().DicionarioRow.Termo; return rai; }
private static string GetDesignacaoInDataSet(GISADataset.NivelRow Nivel) { bool nivelOrganico = isNivelOrganico(Nivel); GisaDataSetHelper.HoldOpen ho = null; if (! nivelOrganico) { if (Nivel.GetNivelDesignadoRows().Length == 0) { ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection()); try { NivelRule.Current.FillNivelDesignado(GisaDataSetHelper.GetInstance(), Nivel.ID, ho.Connection); } catch (Exception ex) { Trace.WriteLine(ex); throw; } finally { ho.Dispose(); } } Debug.Assert(Nivel.GetNivelDesignadoRows().Length > 0); return Nivel.GetNivelDesignadoRows()[0].Designacao; } if (nivelOrganico) { if (Nivel.GetNivelControloAutRows().Length == 0 || Nivel.GetNivelControloAutRows()[0].ControloAutRow.GetControloAutDicionarioRows().Length == 0) { ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection()); try { NivelRule.Current.FillNivelControloAutRows(GisaDataSetHelper.GetInstance(), Nivel.ID, ho.Connection); } catch (Exception ex) { Trace.WriteLine(ex); throw; } finally { ho.Dispose(); } } Debug.Assert(Nivel.GetNivelControloAutRows().Length > 0); Debug.Assert(Nivel.GetNivelControloAutRows()[0].ControloAutRow.GetControloAutDicionarioRows().Length > 0); foreach (GISADataset.ControloAutDicionarioRow cad in Nivel.GetNivelControloAutRows()[0].ControloAutRow.GetControloAutDicionarioRows()) { if (cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada) { return cad.DicionarioRow.Termo; } } } #if (DEBUG) Debug.WriteLine("Nivel ID=", Nivel.ID.ToString()); Debug.WriteLine("Nivel IDTipoNivel=", Nivel.IDTipoNivel.ToString()); throw new ArgumentException("details not found in Nivel.Table.DataSet", "Nivel"); #else { Console.WriteLine("details not found in Nivel.Table.DataSet / Tipo=" + Nivel.IDTipoNivel.ToString()); return ""; } #endif }