public override void LoadData(DataRow CurrentDataRow, IDbConnection conn)
        {
            IsLoaded       = false;
            CurrentFRDBase = (GISADataset.FRDBaseRow)CurrentDataRow;

            var rhRow = CurrentFRDBase.NivelRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica().First();

            this.IDTipoNivelRelacionado = rhRow.IDTipoNivelRelacionado;

            string QueryFilter = "IDFRDBase=" + CurrentFRDBase.ID.ToString();

            ConfigureControlsVisibility(conn);

            if (this.IDTipoNivelRelacionado == (long)TipoNivelRelacionado.SD)
            {
                this.contInfLicencaObrasSD1.LoadData(CurrentFRDBase, conn);
            }
            else
            {
                this.contInfLicencaObras1.LoadData(CurrentFRDBase, conn);
            }

            if (GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.Select(QueryFilter).Length != 0)
            {
                CurrentSFRDConteudoEEstrutura = (GISADataset.SFRDConteudoEEstruturaRow)(GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.Select(QueryFilter)[0]);
            }
            else
            {
                CurrentSFRDConteudoEEstrutura = GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.AddSFRDConteudoEEstruturaRow(CurrentFRDBase, "", "", new byte[] { }, 0);
            }

            IsLoaded = true;
        }
Example #2
0
		public override void ModelToView()
		{
			IsPopulated = false;
			byte[] Versao = null;
			string QueryFilter = "IDFRDBase=" + CurrentFRDBase.ID.ToString();
			if (GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura. Select(QueryFilter).Length != 0)
			{

				CurrentSFRDConteudoEEstrutura = (GISADataset.SFRDConteudoEEstruturaRow)(GisaDataSetHelper.GetInstance(). SFRDConteudoEEstrutura.Select(QueryFilter)[0]);
			}
			else
			{
				CurrentSFRDConteudoEEstrutura = GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura. AddSFRDConteudoEEstruturaRow(CurrentFRDBase, "", "", Versao, 0);
			}

			if (! (CurrentSFRDConteudoEEstrutura.IsIncorporacaoNull()))
			{
				txtIncorporacoes.Text = CurrentSFRDConteudoEEstrutura.Incorporacao;
			}
			else
			{
				txtIncorporacoes.Text = "";
			}
			IsPopulated = true;
		}
        public override void Deactivate()
        {
            this.txtCota.TextChanged -= new System.EventHandler(this.txtCota_TextChanged);
            GUIHelper.GUIHelper.clearField(txtCodigoDeReferencia);
            GUIHelper.GUIHelper.clearField(txtGuia);
            GUIHelper.GUIHelper.clearField(txtTitulo);
            GUIHelper.GUIHelper.clearField(txtCota);
            GUIHelper.GUIHelper.clearField(txtCodigoBarras);
            GUIHelper.GUIHelper.clearField(dtProducaoInicio);
            GUIHelper.GUIHelper.clearField(dtProducaoFim);
            GUIHelper.GUIHelper.clearField(chkAtribuidaInicio);
            GUIHelper.GUIHelper.clearField(chkAtribuidaFim);
            GUIHelper.GUIHelper.clearField(txtCodigoBarras);
            GUIHelper.GUIHelper.clearField(txtGuia);
            GUIHelper.GUIHelper.clearField(txtConteudoInformacional);
            GUIHelper.GUIHelper.clearField(cbTipo);
            cbTipoEntrega.Items.Clear();

            DimensoesSuporte1.clear();

            CurrentNivelUnidadeFisica       = null;
            CurrentUFSFRDDatasProducao      = null;
            CurrentUFSFRDCota               = null;
            CurrentUFSFRDDescricaoFisica    = null;
            CurrentUFSFRDConteudoEEstrutura = null;

            label1.Enabled  = false;
            toolTip1.Active = false;
        }
        public void ViewToModel()
        {
            GISADataset.SFRDConteudoEEstruturaRow[] conteudo =
                (GISADataset.SFRDConteudoEEstruturaRow[])(GisaDataSetHelper.GetInstance().Tables["SFRDConteudoEEstrutura"].Select("IDFRDBase = " + CurrentFRDBase.ID));
            if (conteudo.Count() > 0)
            {
                conteudo[0].ConteudoInformacional = this.txt_Observacoes.Text;
            }
            else
            {
                GISADataset.SFRDConteudoEEstruturaRow newRow = GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.NewSFRDConteudoEEstruturaRow();
                newRow.FRDBaseRow            = CurrentFRDBase;
                newRow.ConteudoInformacional = this.txt_Observacoes.Text;
            }

            // Licenca de obra: tipo de obra e PH
            CurrentLicencaObra.TipoObra = textBox_TipoObra.Text;
        }
Example #5
0
        private string GetFRDBaseAsRTF(GISADataset.NivelRow NivelRow)
        {
            GISADataset.FRDBaseRow FRDBaseRow = null;

            GisaDataSetHelper.ManageDatasetConstraints(false);
            GisaDataSetHelper.HoldOpen ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
            try
            {
                PesquisaRule.Current.LoadFRDBaseUFData(GisaDataSetHelper.GetInstance(), NivelRow.ID, ho.Connection);
            }
            catch (Exception ex)
            {
                Trace.WriteLine(ex);
                throw ex;
            }
            finally
            {
                ho.Dispose();
            }

            GisaDataSetHelper.ManageDatasetConstraints(true);

            StringBuilder Result = new StringBuilder();

            if (GisaDataSetHelper.GetInstance().FRDBase.Select("IDNivel=" + NivelRow.ID.ToString()).Length > 0)
            {
                FRDBaseRow = (GISADataset.FRDBaseRow)(GisaDataSetHelper.GetInstance().FRDBase.Select("IDNivel=" + NivelRow.ID.ToString())[0]);

                // --Identificação--
                Result.Append("\\fs36\\b{}Identificação\\b0{}\\fs24\\sb196\\sa48\\par{}\\sb0\\sa0{}");
                // Entidade Detentora
                if (FRDBaseRow.NivelRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica().Length == 1)
                {
                    Result.Append(GetConditionalText("\\i{}Entidade detentora: \\i0{}", FRDBaseRow.NivelRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica()[0].NivelRowByNivelRelacaoHierarquicaUpper.GetNivelDesignadoRows()[0].Designacao, "\\par{}"));
                }
                // Codigo de Referência
                Result.Append(GetConditionalText("\\i{}Número de recenseamento: \\i0{}", FRDBaseRow.NivelRow.Codigo, "\\par{}"));
                // Cota
                if (FRDBaseRow.GetSFRDUFCotaRows().Length == 1)
                {
                    if (!(FRDBaseRow.GetSFRDUFCotaRows()[0].IsCotaNull()))
                    {
                        Result.Append(GetConditionalText("\\i{}Cota: \\i0{}", FRDBaseRow.GetSFRDUFCotaRows()[0].Cota, "\\par{}"));
                    }
                    else
                    {
                        Result.Append(GetConditionalText("\\i{}Cota: \\i0{}", "", "\\par{}"));
                    }
                }
                // Título
                Result.Append("\\i{}" + TipoNivelRelacionado.GetTipoNivelRelacionadoDaPrimeiraRelacaoEncontrada(FRDBaseRow.NivelRow).Designacao + ": \\i0{}" + Nivel.GetDesignacao(FRDBaseRow.NivelRow) + "\\par{}");
                // Datas
                if (FRDBaseRow.GetSFRDDatasProducaoRows().Length == 1)
                {
                    Result.Append("\\i{}Datas: \\i0{}" + GUIHelper.GUIHelper.FormatDateInterval(FRDBaseRow.GetSFRDDatasProducaoRows()[0]) + "\\par{}");
                }
                // Tipo e dimensões
                if (FRDBaseRow.GetSFRDUFDescricaoFisicaRows().Length == 1)
                {
                    GISADataset.SFRDUFDescricaoFisicaRow sfrdufRow = null;
                    string tipoMedida = null;
                    sfrdufRow = FRDBaseRow.GetSFRDUFDescricaoFisicaRows()[0];
                    Result.Append("\\i{}Tipo: \\i0{}" + sfrdufRow.TipoAcondicionamentoRow.Designacao + "\\par{}");
                    if (sfrdufRow.TipoMedidaRow == null)
                    {
                        tipoMedida = string.Empty;
                    }
                    else
                    {
                        tipoMedida = sfrdufRow.TipoMedidaRow.Designacao;
                    }

                    Result.Append("\\i{}Dimensões: \\i0{}" + string.Format("{0} x {1} x {2} ({3})", GISA.Utils.GUIHelper.getStringifiedDecimal(sfrdufRow["MedidaLargura"]), GISA.Utils.GUIHelper.getStringifiedDecimal(sfrdufRow["MedidaAltura"]), GISA.Utils.GUIHelper.getStringifiedDecimal(sfrdufRow["MedidaProfundidade"]), tipoMedida) + "\\par{}");
                }

                // --ConteudoEstrutura--
                string ConteudoEstrutura = "";
                if (FRDBaseRow.GetSFRDConteudoEEstruturaRows().Length == 1)
                {
                    GISADataset.SFRDConteudoEEstruturaRow ceRow = (GISADataset.SFRDConteudoEEstruturaRow)FRDBaseRow.GetSFRDConteudoEEstruturaRows()[0];

                    if (ceRow.IsConteudoInformacionalNull())
                    {
                        ConteudoEstrutura = GetConditionalText("\\i{}Conteúdo informacional: \\i0{}\\par{}", "", "\\li128\\par\\li0{}");
                    }
                    else
                    {
                        ConteudoEstrutura = GetConditionalText("\\i{}Conteúdo informacional: \\i0{}\\par{}", ceRow.ConteudoInformacional, "\\li128\\par\\li0{}");
                    }
                }

                Result.Append(Section("\\fs36\\b{}Conteúdo e estrutura\\b0{}\\fs24\\sb196\\sa48\\par{}\\sb0\\sa0{}", GetConditionalText("\\i{}Tipologia informacional: \\i0{}\\par{}", GetTermosIndexados(FRDBaseRow, TipoNoticiaAut.TipologiaInformacional), ""), ConteudoEstrutura));

                // --Documentação associada--

                if (FRDBaseRow.GetSFRDDocumentacaoAssociadaRows().Length > 0)
                {
                    Result.Append(Section("\\fs36\\b{}Documentação associada\\b0{}\\fs24\\sb196\\sa48\\par{}\\sb0\\sa0{}", GetConditionalText("\\i{}Existência e localização de originais: \\i0{}\\par{}", FRDBaseRow.GetSFRDDocumentacaoAssociadaRows()[0].ExistenciaDeOriginais, "\\li128\\par\\li0{}") + GetConditionalText("\\i{}Existência e localização de cópias: \\i0{}\\par{}", FRDBaseRow.GetSFRDDocumentacaoAssociadaRows()[0].ExistenciaDeCopias, "\\li128\\par\\li0{}")));
                }

                // --Indexação--
                Result.Append(Section("\\fs36\\b{}Indexação\\b0{}\\fs24\\sb196\\sa48\\par{}\\sb0\\sa0{}", GetConditionalText("\\i{}Conteúdos: \\i0{}\\par{}", GetTermosIndexados(FRDBaseRow, TipoNoticiaAut.Ideografico, TipoNoticiaAut.Onomastico, TipoNoticiaAut.ToponimicoGeografico), "")));
            }
            return(Result.ToString());
        }
        public override void LoadData(DataRow CurrentDataRow, IDbConnection conn) {
            IsLoaded = false;
            CurrentFRDBase = (GISADataset.FRDBaseRow)CurrentDataRow;

            var rhRow = CurrentFRDBase.NivelRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica().First();
            this.IDTipoNivelRelacionado = rhRow.IDTipoNivelRelacionado;

            string QueryFilter = "IDFRDBase=" + CurrentFRDBase.ID.ToString();

            ConfigureControlsVisibility(conn);

            if (this.IDTipoNivelRelacionado == (long)TipoNivelRelacionado.SD) 
                this.contInfLicencaObrasSD1.LoadData(CurrentFRDBase, conn);
            else
                this.contInfLicencaObras1.LoadData(CurrentFRDBase, conn);

            if (GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.Select(QueryFilter).Length != 0)
                CurrentSFRDConteudoEEstrutura = (GISADataset.SFRDConteudoEEstruturaRow)(GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.Select(QueryFilter)[0]);
            else
                CurrentSFRDConteudoEEstrutura = GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.AddSFRDConteudoEEstruturaRow(CurrentFRDBase, "", "", new byte[] { }, 0);

            IsLoaded = true;
        }
        public override void ModelToView()
        {
            IsPopulated = false;
            string QueryFilter = string.Format("IDFRDBase={0}", CurrentUFFRDBase.ID);

            GISADataset.SFRDUFCotaRow[] cotaRows = null;
            cotaRows = (GISADataset.SFRDUFCotaRow[])(GisaDataSetHelper.GetInstance().SFRDUFCota.Select(QueryFilter));

            if (cotaRows.Length == 0)
            {
                CurrentUFSFRDCota = GisaDataSetHelper.GetInstance().SFRDUFCota.AddSFRDUFCotaRow(CurrentUFFRDBase, "", new byte[] { }, 0);
            }
            else
            {
                CurrentUFSFRDCota = cotaRows[0];
            }

            GISADataset.SFRDConteudoEEstruturaRow[] conteudoRows = null;
            conteudoRows = (GISADataset.SFRDConteudoEEstruturaRow[])(GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.Select(QueryFilter));
            if (conteudoRows.Length == 0)
            {
                CurrentUFSFRDConteudoEEstrutura = GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.AddSFRDConteudoEEstruturaRow(CurrentUFFRDBase, "", "", new byte[] { }, 0);
            }
            else
            {
                CurrentUFSFRDConteudoEEstrutura = conteudoRows[0];
            }

            GISADataset.SFRDDatasProducaoRow[] datasProducaoRows = null;
            datasProducaoRows = (GISADataset.SFRDDatasProducaoRow[])(GisaDataSetHelper.GetInstance().SFRDDatasProducao.Select(QueryFilter));
            if (datasProducaoRows.Length == 0)
            {
                CurrentUFSFRDDatasProducao                 = GisaDataSetHelper.GetInstance().SFRDDatasProducao.NewSFRDDatasProducaoRow();
                CurrentUFSFRDDatasProducao.FRDBaseRow      = CurrentUFFRDBase;
                CurrentUFSFRDDatasProducao.InicioAtribuida = false;
                CurrentUFSFRDDatasProducao.FimAtribuida    = false;
                GisaDataSetHelper.GetInstance().SFRDDatasProducao.AddSFRDDatasProducaoRow(CurrentUFSFRDDatasProducao);
            }
            else
            {
                CurrentUFSFRDDatasProducao = datasProducaoRows[0];
            }

            GISADataset.SFRDUFDescricaoFisicaRow[] descricaoFisicaRows = null;
            descricaoFisicaRows = (GISADataset.SFRDUFDescricaoFisicaRow[])(GisaDataSetHelper.GetInstance().SFRDUFDescricaoFisica.Select(QueryFilter));
            if (descricaoFisicaRows.Length == 0)
            {
                CurrentUFSFRDDescricaoFisica                         = GisaDataSetHelper.GetInstance().SFRDUFDescricaoFisica.NewSFRDUFDescricaoFisicaRow();
                CurrentUFSFRDDescricaoFisica.FRDBaseRow              = CurrentUFFRDBase;
                CurrentUFSFRDDescricaoFisica.IDTipoMedida            = 1;
                CurrentUFSFRDDescricaoFisica.TipoAcondicionamentoRow = (GISADataset.TipoAcondicionamentoRow)(GisaDataSetHelper.GetInstance().TipoAcondicionamento.Select(string.Format("ID={0:d}", TipoAcondicionamento.Pasta))[0]);
                GisaDataSetHelper.GetInstance().SFRDUFDescricaoFisica.AddSFRDUFDescricaoFisicaRow(CurrentUFSFRDDescricaoFisica);
            }
            else
            {
                CurrentUFSFRDDescricaoFisica = descricaoFisicaRows[0];
            }

            GISADataset.NivelUnidadeFisicaRow[] nivelUFRows = null;
            nivelUFRows = (GISADataset.NivelUnidadeFisicaRow[])(GisaDataSetHelper.GetInstance().NivelUnidadeFisica.Select(string.Format("ID={0}", CurrentUFFRDBase.NivelRow.ID)));
            if (nivelUFRows.Length == 0)
            {
                GISADataset.NivelUnidadeFisicaRow newNivelUFRow = null;
                newNivelUFRow = GisaDataSetHelper.GetInstance().NivelUnidadeFisica.NewNivelUnidadeFisicaRow();
                newNivelUFRow.NivelDesignadoRow = CurrentUFFRDBase.NivelRow.GetNivelDesignadoRows()[0];
                GisaDataSetHelper.GetInstance().NivelUnidadeFisica.AddNivelUnidadeFisicaRow(newNivelUFRow);

                CurrentNivelUnidadeFisica = newNivelUFRow;
            }
            else
            {
                CurrentNivelUnidadeFisica = (GISADataset.NivelUnidadeFisicaRow)(nivelUFRows[0]);
            }

            GUIHelper.GUIHelper.populateDataInicio(dtProducaoInicio, CurrentUFSFRDDatasProducao);
            GUIHelper.GUIHelper.populateDataFim(dtProducaoFim, CurrentUFSFRDDatasProducao);

            DimensoesSuporte1.populateDimensoes(CurrentUFSFRDDescricaoFisica);

            cbTipo.DisplayMember = "Designacao";
            cbTipo.Items.Clear();
            cbTipo.Items.AddRange(GisaDataSetHelper.GetInstance().TipoAcondicionamento.Select());
            cbTipo.SelectedItem = CurrentUFSFRDDescricaoFisica.TipoAcondicionamentoRow;

            chkAtribuidaInicio.Checked = CurrentUFSFRDDatasProducao.InicioAtribuida;
            chkAtribuidaFim.Checked    = CurrentUFSFRDDatasProducao.FimAtribuida;

            if (CurrentNivelUnidadeFisica.IsCodigoBarrasNull())
            {
                txtCodigoBarras.Text = "";
            }
            else
            {
                txtCodigoBarras.Text = CurrentNivelUnidadeFisica.CodigoBarras.ToString();
            }

            if (CurrentNivelUnidadeFisica.IsGuiaIncorporacaoNull())
            {
                txtGuia.Text = "";
            }
            else
            {
                txtGuia.Text = CurrentNivelUnidadeFisica.GuiaIncorporacao;
            }

            if (CurrentUFSFRDCota.IsCotaNull())
            {
                txtCota.Text = "";
            }
            else
            {
                txtCota.Text = CurrentUFSFRDCota.Cota;
            }

            this.txtCota.TextChanged += new System.EventHandler(this.txtCota_TextChanged);

            if (!(CurrentUFSFRDConteudoEEstrutura.IsConteudoInformacionalNull()))
            {
                txtConteudoInformacional.Text = CurrentUFSFRDConteudoEEstrutura.ConteudoInformacional;
            }
            else
            {
                txtConteudoInformacional.Text = "";
            }

            GisaDataSetHelper.HoldOpen ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
            try
            {
                txtCodigoDeReferencia.Text = DBAbstractDataLayer.DataAccessRules.NivelRule.Current.GetCodigoOfNivel(CurrentUFFRDBase.NivelRow.ID, ho.Connection)[0].ToString();
            }
            finally
            {
                ho.Dispose();
            }
            txtTitulo.Text = Nivel.GetDesignacao(CurrentUFFRDBase.NivelRow);

            // Tipo entrega
            cbTipoEntrega.Items.Add(string.Empty);
            cbTipoEntrega.Items.AddRange(GisaDataSetHelper.GetInstance().TipoEntrega.Rows.Cast <GISADataset.TipoEntregaRow>().ToArray());
            cbTipoEntrega.DisplayMember = "Designacao";

            if (CurrentNivelUnidadeFisica.IsIDTipoEntregaNull())
            {
                cbTipoEntrega.SelectedIndex = 0;
            }
            else
            {
                cbTipoEntrega.SelectedItem = CurrentNivelUnidadeFisica.TipoEntregaRow;
            }

            // Local consulta
            controlLocalConsulta1.rebindToData();
            if (CurrentNivelUnidadeFisica.IsIDLocalConsultaNull())
            {
                controlLocalConsulta1.cbLocalConsulta.SelectedIndex = 0;
            }
            else
            {
                controlLocalConsulta1.cbLocalConsulta.SelectedValue = CurrentNivelUnidadeFisica.IDLocalConsulta;
            }

            IsPopulated = true;
        }
        public override void Deactivate()
        {
            this.txtCota.TextChanged -= new System.EventHandler(this.txtCota_TextChanged);
            GUIHelper.GUIHelper.clearField(txtCodigoDeReferencia);
            GUIHelper.GUIHelper.clearField(txtGuia);
            GUIHelper.GUIHelper.clearField(txtTitulo);
            GUIHelper.GUIHelper.clearField(txtCota);
            GUIHelper.GUIHelper.clearField(txtCodigoBarras);
            GUIHelper.GUIHelper.clearField(dtProducaoInicio);
            GUIHelper.GUIHelper.clearField(dtProducaoFim);
            GUIHelper.GUIHelper.clearField(chkAtribuidaInicio);
            GUIHelper.GUIHelper.clearField(chkAtribuidaFim);
            GUIHelper.GUIHelper.clearField(txtCodigoBarras);
            GUIHelper.GUIHelper.clearField(txtGuia);
            GUIHelper.GUIHelper.clearField(txtConteudoInformacional);
            GUIHelper.GUIHelper.clearField(cbTipo);
            cbTipoEntrega.Items.Clear();

            DimensoesSuporte1.clear();

            CurrentNivelUnidadeFisica = null;
            CurrentUFSFRDDatasProducao = null;
            CurrentUFSFRDCota = null;
            CurrentUFSFRDDescricaoFisica = null;
            CurrentUFSFRDConteudoEEstrutura = null;

            label1.Enabled = false;
            toolTip1.Active = false;
        }
        public override void ModelToView()
        {
            IsPopulated = false;
            string QueryFilter = string.Format("IDFRDBase={0}", CurrentUFFRDBase.ID);
            GISADataset.SFRDUFCotaRow[] cotaRows = null;
            cotaRows = (GISADataset.SFRDUFCotaRow[])(GisaDataSetHelper.GetInstance().SFRDUFCota.Select(QueryFilter));

            if (cotaRows.Length == 0)
                CurrentUFSFRDCota = GisaDataSetHelper.GetInstance().SFRDUFCota.AddSFRDUFCotaRow(CurrentUFFRDBase, "", new byte[] { }, 0);
            else
                CurrentUFSFRDCota = cotaRows[0];

            GISADataset.SFRDConteudoEEstruturaRow[] conteudoRows = null;
            conteudoRows = (GISADataset.SFRDConteudoEEstruturaRow[])(GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.Select(QueryFilter));
            if (conteudoRows.Length == 0)
                CurrentUFSFRDConteudoEEstrutura = GisaDataSetHelper.GetInstance().SFRDConteudoEEstrutura.AddSFRDConteudoEEstruturaRow(CurrentUFFRDBase, "", "", new byte[] { }, 0);
            else
                CurrentUFSFRDConteudoEEstrutura = conteudoRows[0];

            GISADataset.SFRDDatasProducaoRow[] datasProducaoRows = null;
            datasProducaoRows = (GISADataset.SFRDDatasProducaoRow[])(GisaDataSetHelper.GetInstance().SFRDDatasProducao.Select(QueryFilter));
            if (datasProducaoRows.Length == 0)
            {
                CurrentUFSFRDDatasProducao = GisaDataSetHelper.GetInstance().SFRDDatasProducao.NewSFRDDatasProducaoRow();
                CurrentUFSFRDDatasProducao.FRDBaseRow = CurrentUFFRDBase;
                CurrentUFSFRDDatasProducao.InicioAtribuida = false;
                CurrentUFSFRDDatasProducao.FimAtribuida = false;
                GisaDataSetHelper.GetInstance().SFRDDatasProducao.AddSFRDDatasProducaoRow(CurrentUFSFRDDatasProducao);
            }
            else
                CurrentUFSFRDDatasProducao = datasProducaoRows[0];

            GISADataset.SFRDUFDescricaoFisicaRow[] descricaoFisicaRows = null;
            descricaoFisicaRows = (GISADataset.SFRDUFDescricaoFisicaRow[])(GisaDataSetHelper.GetInstance().SFRDUFDescricaoFisica.Select(QueryFilter));
            if (descricaoFisicaRows.Length == 0)
            {
                CurrentUFSFRDDescricaoFisica = GisaDataSetHelper.GetInstance().SFRDUFDescricaoFisica.NewSFRDUFDescricaoFisicaRow();
                CurrentUFSFRDDescricaoFisica.FRDBaseRow = CurrentUFFRDBase;
                CurrentUFSFRDDescricaoFisica.IDTipoMedida = 1;
                CurrentUFSFRDDescricaoFisica.TipoAcondicionamentoRow = (GISADataset.TipoAcondicionamentoRow)(GisaDataSetHelper.GetInstance().TipoAcondicionamento.Select(string.Format("ID={0:d}", TipoAcondicionamento.Pasta))[0]);
                GisaDataSetHelper.GetInstance().SFRDUFDescricaoFisica.AddSFRDUFDescricaoFisicaRow(CurrentUFSFRDDescricaoFisica);
            }
            else
                CurrentUFSFRDDescricaoFisica = descricaoFisicaRows[0];

            GISADataset.NivelUnidadeFisicaRow[] nivelUFRows = null;
            nivelUFRows = (GISADataset.NivelUnidadeFisicaRow[])(GisaDataSetHelper.GetInstance().NivelUnidadeFisica.Select(string.Format("ID={0}", CurrentUFFRDBase.NivelRow.ID)));
            if (nivelUFRows.Length == 0)
            {
                GISADataset.NivelUnidadeFisicaRow newNivelUFRow = null;
                newNivelUFRow = GisaDataSetHelper.GetInstance().NivelUnidadeFisica.NewNivelUnidadeFisicaRow();
                newNivelUFRow.NivelDesignadoRow = CurrentUFFRDBase.NivelRow.GetNivelDesignadoRows()[0];
                GisaDataSetHelper.GetInstance().NivelUnidadeFisica.AddNivelUnidadeFisicaRow(newNivelUFRow);

                CurrentNivelUnidadeFisica = newNivelUFRow;
            }
            else
                CurrentNivelUnidadeFisica = (GISADataset.NivelUnidadeFisicaRow)(nivelUFRows[0]);

            GUIHelper.GUIHelper.populateDataInicio(dtProducaoInicio, CurrentUFSFRDDatasProducao);
            GUIHelper.GUIHelper.populateDataFim(dtProducaoFim, CurrentUFSFRDDatasProducao);

            DimensoesSuporte1.populateDimensoes(CurrentUFSFRDDescricaoFisica);

            cbTipo.DisplayMember = "Designacao";
            cbTipo.Items.Clear();
            cbTipo.Items.AddRange(GisaDataSetHelper.GetInstance().TipoAcondicionamento.Select());
            cbTipo.SelectedItem = CurrentUFSFRDDescricaoFisica.TipoAcondicionamentoRow;

            chkAtribuidaInicio.Checked = CurrentUFSFRDDatasProducao.InicioAtribuida;
            chkAtribuidaFim.Checked = CurrentUFSFRDDatasProducao.FimAtribuida;

            if (CurrentNivelUnidadeFisica.IsCodigoBarrasNull())
                txtCodigoBarras.Text = "";
            else
                txtCodigoBarras.Text = CurrentNivelUnidadeFisica.CodigoBarras.ToString();

            if (CurrentNivelUnidadeFisica.IsGuiaIncorporacaoNull())
                txtGuia.Text = "";
            else
                txtGuia.Text = CurrentNivelUnidadeFisica.GuiaIncorporacao;

            if (CurrentUFSFRDCota.IsCotaNull())
                txtCota.Text = "";
            else
                txtCota.Text = CurrentUFSFRDCota.Cota;

            this.txtCota.TextChanged += new System.EventHandler(this.txtCota_TextChanged);

            if (!(CurrentUFSFRDConteudoEEstrutura.IsConteudoInformacionalNull()))
                txtConteudoInformacional.Text = CurrentUFSFRDConteudoEEstrutura.ConteudoInformacional;
            else
                txtConteudoInformacional.Text = "";

            GisaDataSetHelper.HoldOpen ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
            try
            {
                txtCodigoDeReferencia.Text = DBAbstractDataLayer.DataAccessRules.NivelRule.Current.GetCodigoOfNivel(CurrentUFFRDBase.NivelRow.ID, ho.Connection)[0].ToString();
            }
            finally
            {
                ho.Dispose();
            }
            txtTitulo.Text = Nivel.GetDesignacao(CurrentUFFRDBase.NivelRow);

            // Tipo entrega
            cbTipoEntrega.Items.Add(string.Empty);
            cbTipoEntrega.Items.AddRange(GisaDataSetHelper.GetInstance().TipoEntrega.Rows.Cast<GISADataset.TipoEntregaRow>().ToArray());
            cbTipoEntrega.DisplayMember = "Designacao";

            if (CurrentNivelUnidadeFisica.IsIDTipoEntregaNull())
                cbTipoEntrega.SelectedIndex = 0;
            else
                cbTipoEntrega.SelectedItem = CurrentNivelUnidadeFisica.TipoEntregaRow;

            // Local consulta
            controlLocalConsulta1.rebindToData();
            if (CurrentNivelUnidadeFisica.IsIDLocalConsultaNull())
                controlLocalConsulta1.cbLocalConsulta.SelectedIndex = 0;
            else
                controlLocalConsulta1.cbLocalConsulta.SelectedValue = CurrentNivelUnidadeFisica.IDLocalConsulta;

            IsPopulated = true;
        }