Exemplo n.º 1
0
        private void UpdateEditedItem(ListViewItem item)
        {
            // prever a situação de se ter tentado editar uma relação entretanto apagada por
            // outro utilizador (nesse caso, a interface não é actualizada)
            if (((DataRow)item.Tag).RowState == DataRowState.Detached)
            {
                return;
            }

            if (item.Tag is GISADataset.ControloAutRelRow)
            {
                GISADataset.ControloAutRelRow carRow = null;
                carRow = (GISADataset.ControloAutRelRow)item.Tag;

                if (carRow.ControloAutRowByControloAutControloAutRelAlias.IsChaveColectividadeNull())
                {
                    item.SubItems[colIdentificador.Index].Text = string.Empty;
                }
                else
                {
                    item.SubItems[colIdentificador.Index].Text = carRow.ControloAutRowByControloAutControloAutRelAlias.ChaveColectividade;
                }
                item.SubItems[colCategoria.Index].Text  = carRow.TipoControloAutRelRow.Designacao;
                item.SubItems[colDataInicio.Index].Text = GISA.Utils.GUIHelper.FormatDate(carRow.InicioAno, carRow.InicioMes, carRow.InicioDia);
                item.SubItems[colDataFim.Index].Text    = GISA.Utils.GUIHelper.FormatDate(carRow.FimAno, carRow.FimMes, carRow.FimDia);
                item.SubItems[colDescricao.Index].Text  = GUIHelper.GUIHelper.ClipText(carRow.Descricao);
                txtDescricaoRelacao.Text = carRow.Descricao;
            }
            else if (item.Tag is GISADataset.RelacaoHierarquicaRow)
            {
                GISADataset.RelacaoHierarquicaRow rhRow = null;
                rhRow = (GISADataset.RelacaoHierarquicaRow)item.Tag;
                GISADataset.ControloAutRow relatedCA = null;
                relatedCA = rhRow.NivelRowByNivelRelacaoHierarquica.GetNivelControloAutRows()[0].ControloAutRow;
                GISADataset.TipoControloAutRelRow tcarHierarquicaRow = null;
                tcarHierarquicaRow = (GISADataset.TipoControloAutRelRow)(GisaDataSetHelper.GetInstance().TipoControloAutRel.Select(string.Format("ID={0:d}", TipoControloAutRel.Hierarquica))[0]);

                if (relatedCA.IsChaveColectividadeNull())
                {
                    item.SubItems[colIdentificador.Index].Text = string.Empty;
                }
                else
                {
                    item.SubItems[colIdentificador.Index].Text = relatedCA.ChaveColectividade;
                }

                // nao actualizar a categoria uma vez que este valor nunca poderá ser editado nas relações hierarquicas
                item.SubItems[colDataInicio.Index].Text = GISA.Utils.GUIHelper.FormatDate(rhRow.InicioAno, rhRow.InicioMes, rhRow.InicioDia);
                item.SubItems[colDataFim.Index].Text    = GISA.Utils.GUIHelper.FormatDate(rhRow.FimAno, rhRow.FimMes, rhRow.FimDia);
                item.SubItems[colDescricao.Index].Text  = GUIHelper.GUIHelper.ClipText(rhRow.Descricao);
                txtDescricaoRelacao.Text = rhRow.Descricao;
            }
        }
Exemplo n.º 2
0
        private void AddRelacaoHierarquicaToList(ListViewItem ListViewItem)
        {
            GISADataset.RelacaoHierarquicaRow rhRow = null;
            rhRow = (GISADataset.RelacaoHierarquicaRow)ListViewItem.Tag;
            GISADataset.ControloAutRow caRow      = null;
            GISADataset.ControloAutRow caUpperRow = null;
            caRow      = rhRow.NivelRowByNivelRelacaoHierarquica.GetNivelControloAutRows()[0].ControloAutRow;
            caUpperRow = rhRow.NivelRowByNivelRelacaoHierarquicaUpper.GetNivelControloAutRows()[0].ControloAutRow;
            GISADataset.TipoControloAutRelRow tcarHierarquicaRow = null;
            tcarHierarquicaRow = (GISADataset.TipoControloAutRelRow)(GisaDataSetHelper.GetInstance().TipoControloAutRel.Select(string.Format("ID={0:d}", TipoControloAutRel.Hierarquica))[0]);


            if (caRow.ID != CurrentControloAut.ID)
            {
                if (caRow.IsChaveColectividadeNull())
                {
                    ListViewItem.SubItems.Add(string.Empty);
                }
                else
                {
                    ListViewItem.SubItems.Add(caRow.ChaveColectividade);
                }
            }
            else
            {
                if (caUpperRow.IsChaveColectividadeNull())
                {
                    ListViewItem.SubItems.Add(string.Empty);
                }
                else
                {
                    ListViewItem.SubItems.Add(caUpperRow.ChaveColectividade);
                }
            }
            string tipoRelacao = null;

            if (caRow.ID != CurrentControloAut.ID)
            {
                tipoRelacao = string.Format("{0} ({1})", tcarHierarquicaRow.DesignacaoInversa, rhRow.TipoNivelRelacionadoRow.Designacao);
            }
            else
            {
                tipoRelacao = string.Format("{0} ({1})", tcarHierarquicaRow.Designacao, rhRow.TipoNivelRelacionadoRow.Designacao);
            }

            ListViewItem.SubItems.Add(tipoRelacao);
            ListViewItem.SubItems.Add(GUIHelper.GUIHelper.FormatStartDate(rhRow));
            ListViewItem.SubItems.Add(GUIHelper.GUIHelper.FormatEndDate(rhRow));
            ListViewItem.SubItems.Add(GUIHelper.GUIHelper.ClipText(GISA.Model.GisaDataSetHelper.GetDBNullableText(rhRow, "Descricao")));
        }