本文整理汇总了C#中GISADataset.GetFRDBaseRows方法的典型用法代码示例。如果您正苦于以下问题:C# GISADataset.GetFRDBaseRows方法的具体用法?C# GISADataset.GetFRDBaseRows怎么用?C# GISADataset.GetFRDBaseRows使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类GISADataset
的用法示例。
在下文中一共展示了GISADataset.GetFRDBaseRows方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddDetalhe
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);
}
}
示例2: AssociaNivel
private GISADataset.SFRDUnidadeFisicaRow AssociaNivel(GISADataset.NivelRow nRow)
{
GISADataset.SFRDUnidadeFisicaRow frdufRow = null;
frdufRow = GisaDataSetHelper.GetInstance().SFRDUnidadeFisica.NewSFRDUnidadeFisicaRow();
frdufRow.FRDBaseRow = nRow.GetFRDBaseRows()[0];
frdufRow.NivelRow = CurrentNivel;
GisaDataSetHelper.GetInstance().SFRDUnidadeFisica.AddSFRDUnidadeFisicaRow(frdufRow);
return frdufRow;
}
示例3: GetAutores
private void GetAutores(GISADataset.NivelRow NivelRow)
{
Autores = new ArrayList();
var ncaRows = NivelRow.GetFRDBaseRows().Single().GetSFRDAutorRows().SelectMany(aut => aut.ControloAutRow.GetNivelControloAutRows());
Autores.AddRange(ncaRows.Select(nca => nca.NivelRow).ToArray());
}
示例4: acceptAssociation
private void acceptAssociation(GISADataset.NivelRow nRow, string codigoCompleto)
{
// validar a associação: só se pode associar um nível que pertença à mesma entidade detentadora da unidade física
//ArrayList entidadesDetentoras = new ArrayList();
//GisaDataSetHelper.HoldOpen ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
//try
//{
// entidadesDetentoras = DBAbstractDataLayer.DataAccessRules.UFRule.Current.GetEntidadeDetentoraForNivel(nRow.ID, ho.Connection);
//}
//catch (Exception ex)
//{
// Trace.WriteLine(ex);
// throw;
//}
//finally
//{
// ho.Dispose();
//}
//if (! (entidadesDetentoras.Contains(CurrentNivel.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica()[0].IDUpper)))
//{
// MessageBox.Show("Não é permitido associar uma unidade de descrição de uma " + System.Environment.NewLine + "entidade detentora diferente da unidade física seleccionada.", "Adicionar Unidades de Descrição", MessageBoxButtons.OK, MessageBoxIcon.Warning);
// return;
//}
// aceitar o drop apenas se se tratar de um Nivel ainda não associado
if (nRow.GetFRDBaseRows().Length > 0)
{
GISADataset.SFRDUnidadeFisicaRow[] frdufRows = (GISADataset.SFRDUnidadeFisicaRow[])(GisaDataSetHelper.GetInstance().SFRDUnidadeFisica.Select(string.Format("IDFRDBase={0} AND IDNivel={1}", nRow.GetFRDBaseRows()[0].ID, CurrentNivel.ID), "", DataViewRowState.Deleted));
if (frdufRows.Length > 0)
{
frdufRows[0].RejectChanges();
AddDetalhe(nRow, nCod);
ListViewItem item = PopulateAssociacao(frdufRows[0]);
lstVwNiveisAssoc.Items.Insert(0, item);
item.EnsureVisible();
}
else
{
if (GisaDataSetHelper.GetInstance().SFRDUnidadeFisica.Select(string.Format("IDFRDBase={0} AND IDNivel={1}", nRow.GetFRDBaseRows()[0].ID, CurrentNivel.ID)).Length == 0)
{
GISADataset.SFRDUnidadeFisicaRow frdufRow = null;
frdufRow = AssociaNivel(nRow);
AddDetalhe(nRow, nCod);
ordem.Insert(0, frdufRow.IDFRDBase);
ListViewItem item = PopulateAssociacao(frdufRow);
lstVwNiveisAssoc.Items.Insert(0, item);
item.EnsureVisible();
}
}
}
else
{
var ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
try
{
FRDRule.Current.LoadFRD(GisaDataSetHelper.GetInstance(), nRow.ID, ho.Connection);
}
catch (Exception ex)
{
Trace.WriteLine(ex);
throw;
}
finally
{
ho.Dispose();
}
if (nRow.GetFRDBaseRows().Length > 0 && nRow.GetFRDBaseRows()[0].isDeleted == 1)
MessageBox.Show("O nível selecionado foi apagado por outro utilizador " + System.Environment.NewLine + "motivo pelo qual não é possível terminar a associação", "Unidades de Descrição", MessageBoxButtons.OK, MessageBoxIcon.Warning);
else
{
if (nRow.GetFRDBaseRows().Length == 0)
{
// Criar uma nova FRD para o nível em questão.
GISADataset.FRDBaseRow frdRow = GisaDataSetHelper.GetInstance().FRDBase.NewFRDBaseRow();
frdRow.NivelRow = nRow;
frdRow.TipoFRDBaseRow = (GISADataset.TipoFRDBaseRow)(GisaDataSetHelper.GetInstance().TipoFRDBase.Select(string.Format("ID={0:d}", TipoFRDBase.FRDOIRecolha))[0]);
frdRow.NotaDoArquivista = string.Empty;
frdRow.RegrasOuConvencoes = string.Empty;
GisaDataSetHelper.GetInstance().FRDBase.AddFRDBaseRow(frdRow);
}
GISADataset.SFRDUnidadeFisicaRow frdufRow = null;
frdufRow = AssociaNivel(nRow);
AddDetalhe(nRow, codigoCompleto);
ordem.Insert(0, frdufRow.IDFRDBase);
ListViewItem item = PopulateAssociacao(frdufRow);
lstVwNiveisAssoc.Items.Insert(0, item);
item.EnsureVisible();
}
}
}
示例5: GetConteudoInformacional
public static string GetConteudoInformacional(GISADataset ds, GISADataset.NivelRow nivelUF)
{
var ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
try
{
DBAbstractDataLayer.DataAccessRules.UFRule.Current.LoadUFConteudoEstruturaData(ds, nivelUF.GetFRDBaseRows()[0].ID, ho.Connection);
}
catch (Exception ex)
{
Trace.WriteLine(ex);
throw;
}
finally
{
ho.Dispose();
}
var ce = nivelUF.GetFRDBaseRows()[0].GetSFRDConteudoEEstruturaRows().FirstOrDefault();
return ce != null ? ce.ConteudoInformacional : "";
}
示例6: GetNewDocumentoCompostoGisa
private static DocumentoGisa GetNewDocumentoCompostoGisa(GISADataset.NivelRow nivelRow, List<long> IDNivelProdutores)
{
var di = new DocumentoGisa();
di.Tipo = TipoEntidadeInterna.DocumentoComposto;
di.Estado = TipoEstado.SemAlteracoes;
di.Id = nivelRow.ID;
di.Codigo = nivelRow.Codigo;
di.Titulo = nivelRow.GetNivelDesignadoRows()[0].Designacao;
var cadRowProdutores = IDNivelProdutores.SelectMany(i => GisaDataSetHelper.GetInstance().NivelControloAut.Cast<GISADataset.NivelControloAutRow>().Where(r => r.ID == i)).SelectMany(nca => nca.ControloAutRow.GetControloAutDicionarioRows());
di.Produtores.AddRange(cadRowProdutores.Where(cad => cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada).Select(cad => cad.DicionarioRow.Termo));
var frdRow = nivelRow.GetFRDBaseRows().Single();
var dpRow = frdRow.GetSFRDDatasProducaoRows().SingleOrDefault();
if (dpRow != null && !(dpRow.InicioAno.Length == 0 || dpRow.InicioMes.Length == 0 || dpRow.InicioDia.Length == 0 || dpRow.FimAno.Length == 0 || dpRow.FimMes.Length == 0 || dpRow.FimDia.Length == 0))
di.DataCriacao.AdicionaValorOriginal(new DataIncompleta(dpRow.InicioAno, dpRow.InicioMes, dpRow.InicioDia, dpRow.FimAno, dpRow.FimMes, dpRow.FimDia));
return di;
}
示例7: GetNewDocumentoGisa
private static DocumentoGisa GetNewDocumentoGisa(GISADataset.NivelRow nivelRow, List<long> IDNivelProdutores)
{
var di = new DocumentoGisa();
di.Tipo = TipoEntidadeInterna.DocumentoSimples;
di.Estado = TipoEstado.SemAlteracoes;
di.Id = nivelRow.ID;
di.Codigo = nivelRow.Codigo;
di.Titulo = nivelRow.GetNivelDesignadoRows()[0].Designacao;
var frdRow = nivelRow.GetFRDBaseRows()[0];
var codigoRow = GisaDataSetHelper.GetInstance().Codigo.Cast<GISADataset.CodigoRow>().Where( row => ((GISADataset.CodigoRow)row).Codigo.StartsWith("ne:", StringComparison.InvariantCultureIgnoreCase)).SingleOrDefault();
if (codigoRow != null)
di.NumeroEspecifico.AdicionaValorOriginal(codigoRow.Codigo);
var dpRow = frdRow.GetSFRDDatasProducaoRows().SingleOrDefault();
if (dpRow != null && !(dpRow.InicioAno.Length == 0 || dpRow.InicioMes.Length == 0 || dpRow.InicioDia.Length == 0 || dpRow.FimAno.Length == 0 || dpRow.FimMes.Length == 0 || dpRow.FimDia.Length == 0))
di.DataCriacao.AdicionaValorOriginal(new DataIncompleta(dpRow.InicioAno, dpRow.InicioMes, dpRow.InicioDia, dpRow.FimAno, dpRow.FimMes, dpRow.FimDia));
// preencher com Tipologia e termos de indexação
var cadRows = GisaDataSetHelper.GetInstance().FRDBase.Cast<GISADataset.FRDBaseRow>().Where(r => r.IDNivel == nivelRow.ID).SelectMany(frd => frd.GetIndexFRDCARows()).SelectMany(r => r.ControloAutRow.GetControloAutDicionarioRows());
var onomasticos = cadRows.Where(cad => cad.ControloAutRow.IDTipoNoticiaAut == (long)TipoNoticiaAut.Onomastico && cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada);
var ideograficos = cadRows.Where(cad => cad.ControloAutRow.IDTipoNoticiaAut == (long)TipoNoticiaAut.Ideografico && cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada);
var geograficos = cadRows.Where(cad => cad.ControloAutRow.IDTipoNoticiaAut == (long)TipoNoticiaAut.ToponimicoGeografico && cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada);
var tipologia = cadRows.Where(cad => cad.ControloAutRow.IDTipoNoticiaAut == (long)TipoNoticiaAut.TipologiaInformacional && cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada).ToList().SingleOrDefault();
di.Onomasticos.AddRange(onomasticos.Select(cad => cad.DicionarioRow.Termo));
di.Ideograficos.AddRange(ideograficos.Select(cad => cad.DicionarioRow.Termo));
di.Toponimias.AddRange(geograficos.Select(cad => cad.DicionarioRow.Termo));
if (tipologia != null)
di.Tipologia = tipologia.DicionarioRow.Termo;
var cadRowProdutores = IDNivelProdutores.SelectMany(i => GisaDataSetHelper.GetInstance().NivelControloAut.Cast<GISADataset.NivelControloAutRow>().Where(r => r.ID == i)).SelectMany(nca => nca.ControloAutRow.GetControloAutDicionarioRows());
di.Produtores.AddRange(cadRowProdutores.Where(cad => cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada).Select(cad => cad.DicionarioRow.Termo));
return di;
}
示例8: EditNivel
private void EditNivel(FormAddNivel frm, GISADataset.NivelRow NivelRow)
{
GISADataset.TipoNivelRelacionadoRow tnrRow;
if (NivelRow.IDTipoNivel == TipoNivel.LOGICO && GisaDataSetHelper.GetInstance().RelacaoHierarquica.Select("ID="+NivelRow.ID.ToString()).Length == 0)
tnrRow = GisaDataSetHelper.GetInstance().TipoNivelRelacionado.Cast<GISADataset.TipoNivelRelacionadoRow>().Single(r => r.ID == TipoNivelRelacionado.ED);
else
tnrRow = GisaDataSetHelper.GetInstance().RelacaoHierarquica.Cast<GISADataset.RelacaoHierarquicaRow>().First(r => r.ID == NivelRow.ID && r.RowState != DataRowState.Deleted).TipoNivelRelacionadoRow;
string WindowTitle = string.Format("Editar {0}", tnrRow.Designacao);
// Don't allow to edit a Nivel without a Controlo
// Autoridade using a form with Controlo Autoridade.
// frm will only be of type FormNivelEstrutural if the
// related administration option is set to "demand a ControloAutoridade"
if (frm is FormNivelEstrutural && ! (NivelRow.CatCode.Trim().Equals("CA")))
{
MessageBox.Show("O nível selecionado não foi definido com " + "base numa entidade produtora." + System.Environment.NewLine + "Assim, para que este nível seja editável é necessário " + "que a aplicação esteja " + System.Environment.NewLine + "configurada para lidar com níveis não controlados.", WindowTitle, MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
else if (! (frm is FormNivelEstrutural) && ! (NivelRow.CatCode.Trim().Equals("NVL")))
{
MessageBox.Show("O nível selecionado foi definido com " + "base numa entidade produtora." + System.Environment.NewLine + "Assim, para que este nível seja editável é necessário " + "que a aplicação esteja " + System.Environment.NewLine + "configurada para lidar com níveis controlados.", WindowTitle, MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
frm.Text = WindowTitle;
frm.txtCodigo.Text = NivelRow.Codigo;
frm.txtDesignacao.Text = Nivel.GetDesignacao(NivelRow);
// se se tratar de uma série ou subsérie o código será sempre automático
if (tnrRow.ID == TipoNivelRelacionado.SR || tnrRow.ID == TipoNivelRelacionado.SSR)
frm.txtCodigo.Enabled = false;
frm.LoadData();
if (NivelRow.TipoNivelRow.ID != TipoNivel.LOGICO)
{
// populate controls with data so that it can be edited
if (frm is FormNivelEstrutural)
{
FormNivelEstrutural tempWith1 = (FormNivelEstrutural)frm;
if (NivelRow.CatCode.Trim().Equals("CA"))
{
tempWith1.caList.txtFiltroDesignacao.Text = tempWith1.txtDesignacao.Text;
tempWith1.caList.ReloadList();
tempWith1.chkControloAut = true;
}
else if (NivelRow.CatCode.Trim().Equals("NVL"))
tempWith1.chkControloAut = false;
}
}
// show form and receive user feedback
switch (frm.ShowDialog())
{
case DialogResult.OK:
Trace.WriteLine("A editar nível...");
GISADataset.NivelDesignadoRow ndRow = null;
// Um Nivel documental deve ter obrigatoriamente um NivelDesignado.
Debug.Assert(NivelRow.GetNivelDesignadoRows().Length > 0);
ndRow = NivelRow.GetNivelDesignadoRows()[0];
NivelRow.Codigo = frm.txtCodigo.Text;
ndRow.Designacao = frm.txtDesignacao.Text;
// registar a edição do item selecionado
if (NivelRow.IDTipoNivel != TipoNivel.LOGICO)
CurrentContext.RaiseRegisterModificationEvent(NivelRow.GetFRDBaseRows()[0]);
PersistencyHelper.EnsureUniqueCodigoNivelPreConcArguments pcArgs = new PersistencyHelper.EnsureUniqueCodigoNivelPreConcArguments();
pcArgs.nRowID = NivelRow.ID;
pcArgs.ndRowID = ndRow.ID;
// Se se tratar de uma entidade detentora não passar os Ids de uma relação
// hierárquica para um nível superior pois não existe nenhum.
if (NivelRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica().Length > 0)
{
pcArgs.rhRowID = NivelRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica()[0].ID;
pcArgs.rhRowIDUpper = NivelRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica()[0].IDUpper;
}
pcArgs.testOnlyWithinNivel = true;
PersistencyHelper.SaveResult successfulSave = PersistencyHelper.save(DelegatesHelper.ensureUniqueCodigo, pcArgs);
if (! pcArgs.successful)
MessageBox.Show(pcArgs.message, "Criação de unidade de descrição", MessageBoxButtons.OK, MessageBoxIcon.Warning);
else if (successfulSave == PersistencyHelper.SaveResult.successful)
{
GisaDataSetHelper.HoldOpen ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
try
{
List<string> IDNiveis = new List<string>();
IDNiveis.Add(NivelRow.ID.ToString());
GISA.Search.Updater.updateNivelDocumental(IDNiveis);
}
catch (Exception ex)
{
Trace.WriteLine(ex.ToString());
throw;
}
finally
{
//.........这里部分代码省略.........
示例9: getAvaliacao
private GISADataset.SFRDAvaliacaoRow getAvaliacao(GISADataset.NivelRow nRow)
{
GISADataset.FRDBaseRow[] frdRows = null;
GISADataset.FRDBaseRow frdRow = null;
GISADataset.SFRDAvaliacaoRow[] frdAvaliacaoRows = null;
GISADataset.SFRDAvaliacaoRow frdAvaliacaoRow = null;
frdRows = nRow.GetFRDBaseRows();
if (frdRows.Length > 0)
{
frdRow = getFRDRecolha(frdRows);
frdAvaliacaoRows = frdRow.GetSFRDAvaliacaoRows();
if (frdAvaliacaoRows.Length > 0)
frdAvaliacaoRow = frdAvaliacaoRows[0];
}
if (frdRow == null)
{
// Criar uma nova FRD para este documento.
frdRow = GisaDataSetHelper.GetInstance().FRDBase.NewFRDBaseRow();
frdRow.NivelRow = nRow;
frdRow.TipoFRDBaseRow = (GISADataset.TipoFRDBaseRow)(GisaDataSetHelper.GetInstance().TipoFRDBase.Select(string.Format("ID={0:d}", TipoFRDBase.FRDOIRecolha))[0]);
frdRow.NotaDoArquivista = string.Empty;
frdRow.RegrasOuConvencoes = string.Empty;
GisaDataSetHelper.GetInstance().FRDBase.AddFRDBaseRow(frdRow);
}
if (frdAvaliacaoRow == null)
{
// criar uma nova SFRDAvaliacao para este documento
frdAvaliacaoRow = GisaDataSetHelper.GetInstance().SFRDAvaliacao.NewSFRDAvaliacaoRow();
frdAvaliacaoRow.FRDBaseRow = frdRow;
CurrentSFRDAvaliacao.IDPertinencia = 1;
CurrentSFRDAvaliacao.IDDensidade = 1;
CurrentSFRDAvaliacao.IDSubdensidade = 1;
frdAvaliacaoRow.Publicar = false;
frdAvaliacaoRow.AvaliacaoTabela = false;
// se não estivermos a usar avaliação todos os documentos/UFs são
// automaticamente marcados para conservação
if (! GisaDataSetHelper.UsingGestaoIntegrada())
frdAvaliacaoRow.Preservar = true;
GisaDataSetHelper.GetInstance().SFRDAvaliacao.AddSFRDAvaliacaoRow(frdAvaliacaoRow);
}
return frdAvaliacaoRow;
}