Пример #1
0
        // Adicionar um tecnico de obra (registo de autoridade onomastico):
        private void btnAddTecnicoObra_Click(object sender, EventArgs e)
        {
            FormPickControloAut frmPick = new FormPickControloAut();

            frmPick.Text = "Notícia de autoridade - Pesquisar registo de autoridade onomástico";
            frmPick.caList.AllowedNoticiaAut(TipoNoticiaAut.Onomastico);
            frmPick.caList.ReloadList();

            GISADataset.ControloAutRow            caRow         = null;
            GISADataset.LicencaObraTecnicoObraRow tecnicoRow    = null;
            GISADataset.ControloAutDicionarioRow  dicionarioRow = null;

            if (frmPick.caList.Items.Count > 0)
            {
                frmPick.caList.SelectItem(frmPick.caList.Items[0]);
            }

            switch (frmPick.ShowDialog())
            {
            case DialogResult.OK:
                foreach (ListViewItem li in frmPick.caList.SelectedItems)
                {
                    dicionarioRow = (GISADataset.ControloAutDicionarioRow)li.Tag;
                    caRow         = dicionarioRow.ControloAutRow;
                    if (!existe_LicencaObraTecnicoObra(caRow))
                    {
                        tecnicoRow = GisaDataSetHelper.GetInstance().LicencaObraTecnicoObra.NewLicencaObraTecnicoObraRow();
                        tecnicoRow.LicencaObraRow = CurrentLicencaObra;
                        tecnicoRow.ControloAutRow = caRow;
                        tecnicoRow.isDeleted      = 0;
                        // Dados:
                        Add_RowTecnicoObra(tecnicoRow);
                        // GUI: adicionar `a lista:
                        Add_ViewTecnicoObra(dicionarioRow, tecnicoRow);
                    }
                }
                break;

            default:
                break;
            }
        }
Пример #2
0
        private void Add_RowTecnicoObra(GISADataset.LicencaObraTecnicoObraRow new_tecnicoRow)
        {
            bool exists = false;

            GISADataset.LicencaObraTecnicoObraRow[] tecnicos =
                (GISADataset.LicencaObraTecnicoObraRow[])(GisaDataSetHelper.GetInstance().Tables["LicencaObraTecnicoObra"].Select("IDFRDBase = " + CurrentFRDBase.ID));

            foreach (GISADataset.LicencaObraTecnicoObraRow tRow in tecnicos)
            {
                if (tRow.IDFRDBase == CurrentFRDBase.ID && tRow.IDControloAut == new_tecnicoRow.IDControloAut)
                {
                    exists = true;
                    if (tRow.isDeleted == 1)
                    {
                        tRow.isDeleted = 0;
                    }
                    break;
                }
            }
            if (!exists)
            {
                GisaDataSetHelper.GetInstance().LicencaObraTecnicoObra.AddLicencaObraTecnicoObraRow(new_tecnicoRow);
            }
        }
Пример #3
0
        // Adicionar um tecnico de obra (registo de autoridade onomastico):
        private void btnAddTecnicoObra_Click(object sender, EventArgs e)
        {
            FormPickControloAut frmPick = new FormPickControloAut();

            frmPick.Text = "Notícia de autoridade - Pesquisar registo de autoridade onomástico";
            frmPick.caList.AllowedNoticiaAut(TipoNoticiaAut.Onomastico);
            frmPick.caList.ReloadList();

            GISADataset.ControloAutRow            caRow      = null;
            GISADataset.LicencaObraTecnicoObraRow tecnicoRow = null;
            GISADataset.ControloAutDicionarioRow  cadRow     = null;

            if (frmPick.caList.Items.Count > 0)
            {
                frmPick.caList.SelectItem(frmPick.caList.Items[0]);
            }

            switch (frmPick.ShowDialog())
            {
            case DialogResult.OK:
                foreach (ListViewItem li in frmPick.caList.SelectedItems)
                {
                    cadRow = (GISADataset.ControloAutDicionarioRow)li.Tag;
                    caRow  = cadRow.ControloAutRow;
                    if (!existe_LicencaObraTecnicoObra(caRow))
                    {
                        if (cadRow.IDTipoControloAutForma != (long)TipoControloAutForma.FormaAutorizada)
                        {
                            GisaDataSetHelper.HoldOpen ho = new GisaDataSetHelper.HoldOpen(GisaDataSetHelper.GetConnection());
                            try
                            {
                                ControloAutRule.Current.LoadDicionarioAndControloAutDicionario(GisaDataSetHelper.GetInstance(), cadRow.IDControloAut, ho.Connection);
                            }
                            catch (Exception ex)
                            {
                                Trace.WriteLine(ex);
                                throw;
                            }
                            finally
                            {
                                ho.Dispose();
                            }
                            cadRow = caRow.GetControloAutDicionarioRows().Where(cad => cad.IDTipoControloAutForma == (long)TipoControloAutForma.FormaAutorizada).Single();
                        }

                        tecnicoRow = GisaDataSetHelper.GetInstance().LicencaObraTecnicoObra.NewLicencaObraTecnicoObraRow();
                        tecnicoRow.LicencaObraRow = CurrentLicencaObra;
                        tecnicoRow.ControloAutRow = caRow;
                        tecnicoRow.isDeleted      = 0;
                        // Dados:
                        Add_RowTecnicoObra(tecnicoRow);
                        // GUI: adicionar `a lista:
                        Add_ViewTecnicoObra(cadRow, tecnicoRow);
                    }
                }
                break;

            default:
                break;
            }
        }
Пример #4
0
        private void Add_ViewTecnicoObra(GISADataset.ControloAutDicionarioRow dictRow, GISADataset.LicencaObraTecnicoObraRow new_tecnicoRow)
        {
            // Nome do tecnico:
            ListViewItem item = new ListViewItem(dictRow.DicionarioRow.Termo);

            item.Tag = new_tecnicoRow;
            this.lstVwTecnicoObra.Items.Add(item);
        }