Esempio n. 1
0
        public void LoadData(CondominioDTO condominio, EsercizioDTO esercizio, List<RataSoggettoDTO> rateSoggetti, List<ImportoSaldoSoggettoDTO> saldiSoggetti, IList<RiepilogoRipartoDTO> riepilogoRiparto, TipoListaRate tipoLista, bool isCreazione, TipoAccorpamentoRateEnum tipo)
        {
            try
            {
                _tipo = tipo;
                _condominio = condominio;
                _esercizio = esercizio;
                _rateSoggetti = rateSoggetti;
                _saldiSoggetti = saldiSoggetti;
                _riepilogoRiparto = riepilogoRiparto;
                _isCreazione = isCreazione;

                loadConti();
                _pianoRateale = getRateCondominiService().GetPianoRatealeByEsercizio(_esercizio.ID, false) ?? new PianoRatealeDTO { Tipo = tipo };
                _pianoRateale.Tipo = tipo;

                if (_isCreazione)
                {
                    btnStampa.Visible = false;
                    nuovaDataPanel.Visible = false;
                }
                else
                {
                    btnStampa.Visible = true;
                    nuovaDataPanel.Visible = true;
                }

                sceltaTipoLista.Value = tipoLista.ToString().ToLower();

                // Se è ancora a null carico la lista dei soggetti relativi al condominio.
                if (_soggetti == null)
                    _soggetti = getRateCondominiService().GetPartecipanti(_condominio.ID, _tipo);

                if(tipoLista == TipoListaRate.Pivot)
                {
                    try
                    {
                        var resultMessage = getRateCondominiService().ConvertRateSoggettiToPivot(rateSoggetti, _saldiSoggetti, riepilogoRiparto, _allowInvertiSegno, _pianoRateale, _isCreazione);
                        if (resultMessage.DataTable == null)
                        {
                            CommonMessages.DisplayWarning(string.Format("Si sono verificati i seguenti errori:{1}{0}{1}Si prega di riprovare", resultMessage.FatalMessage, Environment.NewLine));
                            ParentForm?.Close();
                            return;
                        }
                        else
                        {
                            listaRateSoggetti.DataSource = resultMessage.DataTable;
                            setGridLayout(tipoLista);
                            setRowsLayout();
                        }
                    }
                    catch (Exception ex)
                    {
                        _log.ErrorFormat("Errore inaspettato durante il caricamento dei dati del piano rateale - DataSource di listaRateSoggetti - {0} - condominio:{1} - esercizio:{2}", ex, Utility.GetMethodDescription(), _condominio.ID, _esercizio.ID);
                        throw;
                    }
                }
                else if (tipoLista == TipoListaRate.Editabile)
                {
                    var dataSourceEditabile = rateSoggetti;
                    if (!_isCreazione)
                        dataSourceEditabile = new List<RataSoggettoDTO>(dataSourceEditabile.Where(item => item.ID > 0 && item.Importo > 0).ToList());

                    listaRateSoggetti.DataSource = new System.ComponentModel.BindingList<RataSoggettoDTO>(dataSourceEditabile);

                    listaRateSoggetti.DisplayLayout.ValueLists.Clear();
                    listaRateSoggetti.DisplayLayout.ValueLists.Add(DataSourceHelper.GetValueList(_soggetti, "ID", "DisplayNominativo", "SoggettiCondominio"));
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggettoCondominio"].ValueList = listaRateSoggetti.DisplayLayout.ValueLists["SoggettiCondominio"];
                    setGridLayout(tipoLista);
                }
        
                listaRateSoggetti.DisplayLayout.Bands[0].Summaries.Clear();
                foreach (var column in listaRateSoggetti.DisplayLayout.Bands[0].Columns)
                {
                    if(column.DataType == typeof(decimal))
                        DataGridHelper.AddSummary(listaRateSoggetti.DisplayLayout.Bands[0], column.Key, "c");
                }

                btnConferma.Visible = false;
                listaRateSoggetti.PerformAction(UltraGridAction.FirstRowInBand);
            }
            catch (Exception ex)
            {
                _log.ErrorFormat("Errore inaspettato durante il caricamento dei dati del piano rateale - 2 - {0} - condominio:{1} - esercizio:{2}", ex, Utility.GetMethodDescription(), _condominio.ID, _esercizio.ID);
                throw;
            }
        }
Esempio n. 2
0
        private void setGridLayout(TipoListaRate tipoLista)
        {
            try
            {
                if (tipoLista == TipoListaRate.Pivot)
                {
                    listaRateSoggetti.DisplayLayout.Bands[0].ColHeaderLines = 3;

                    var dataSource = listaRateSoggetti.DataSource as DataTable;
                    var columnCaption = new Dictionary<string, string>();
                    if (dataSource != null && dataSource.ExtendedProperties.ContainsKey("ColumnCaption"))
                        columnCaption = dataSource.ExtendedProperties["ColumnCaption"] as Dictionary<string, string>;

                    //listaRateSoggetti.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
                    listaRateSoggetti.DisplayLayout.Override.CellClickAction = CellClickAction.Edit;
                    listaRateSoggetti.DisplayLayout.Override.AllowDelete = DefaultableBoolean.False;
                    listaRateSoggetti.DisplayLayout.Override.AllowUpdate = DefaultableBoolean.True;
                    listaRateSoggetti.DisplayLayout.Override.AllowAddNew = AllowAddNew.No;

                    var order = 1;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggetto"].Hidden = true;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggetto"].Header.Caption = @"Id";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggetto"].ColumnChooserCaption = @"Identificativo";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggetto"].Width = 40;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggetto"].Header.VisiblePosition = order;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggetto"].CellActivation = Activation.NoEdit;
                    order++;

                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["OrdineUnitaImmobiliare"].Header.Caption = @"Prg.";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["OrdineUnitaImmobiliare"].ColumnChooserCaption = @"Progressivo Unità Immobiliare";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["OrdineUnitaImmobiliare"].Header.VisiblePosition = order;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["OrdineUnitaImmobiliare"].Width = 50;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["OrdineUnitaImmobiliare"].CellActivation = Activation.NoEdit;
                    order++;

                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["Nominativo"].Header.VisiblePosition = order;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["Nominativo"].Width = 160;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["Nominativo"].CellActivation = Activation.NoEdit;
                    order++;

                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneUnitaImmobiliare"].Header.Caption = @"Unità Imm.";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneUnitaImmobiliare"].ColumnChooserCaption = @"Unità Immobiliare";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneUnitaImmobiliare"].Header.VisiblePosition = order;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneUnitaImmobiliare"].Width = 160;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneUnitaImmobiliare"].CellActivation = Activation.NoEdit;
                    order++;

                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoPreventivo"].Header.Caption = @"Prev.";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoPreventivo"].ColumnChooserCaption = @"Totale Preventivo";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoPreventivo"].Format = @"c";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoPreventivo"].CellAppearance.TextHAlignAsString = @"Right";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoPreventivo"].Header.VisiblePosition = order;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoPreventivo"].Width = 100;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoPreventivo"].CellActivation = Activation.NoEdit;
                    order++;

                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoSaldoPrecedente"].Header.Caption = @"Saldo";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoSaldoPrecedente"].ColumnChooserCaption = @"Saldo Precedente";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoSaldoPrecedente"].Format = @"c";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoSaldoPrecedente"].CellAppearance.TextHAlignAsString = @"Right";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoSaldoPrecedente"].Header.VisiblePosition = order;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoSaldoPrecedente"].Width = 100;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoSaldoPrecedente"].CellActivation = Activation.NoEdit;
                    order++;

                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["DeleteColumn"].Hidden = true;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["DeleteColumn"].ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;

                    foreach (var column in listaRateSoggetti.DisplayLayout.Bands[0].Columns)
                    {
                        try
                        {
                            listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Nullable = Nullable.Nothing;

                            if (column.Key.StartsWith("Decimal_Data_"))
                            {
                                var data = DateTime.Parse(column.Key.Split('_')[2]);
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Format = @"c";
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellAppearance.TextHAlign = HAlign.Right;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Style = ColumnStyle.Currency;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.Caption = data.ToShortDateString();
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].ColumnChooserCaption = @"Data - " + data.ToShortDateString();
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Hidden = false;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.VisiblePosition = order;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Width = 100;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellActivation = Activation.AllowEdit;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Nullable = Nullable.Automatic;
                                order++;
                            }

                            if (column.Key.StartsWith("Data_"))
                            {
                                var data = DateTime.Parse(column.Key.Split('_')[1]);
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.Caption = @"Emiss. - " + data.ToShortDateString();
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].ColumnChooserCaption = @"Data Emissione per rata " + data.ToShortDateString();
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellAppearance.TextHAlign = HAlign.Right;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.VisiblePosition = order;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Width = 70;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellActivation = Activation.NoEdit;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellClickAction = CellClickAction.EditAndSelectText;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Hidden = !chkDataEmissione.Checked;
                                order++;
                            }

                            if (column.Key.StartsWith("Versato_"))
                            {
                                var data = DateTime.Parse(column.Key.Split('_')[1]);
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Format = @"c";
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellAppearance.TextHAlign = HAlign.Right;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Style = ColumnStyle.Currency;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.Caption = @"Versato - " + data.ToShortDateString();
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].ColumnChooserCaption = @"Importo versato per rata " + data.ToShortDateString();
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellAppearance.TextHAlign = HAlign.Right;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.VisiblePosition = order;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Width = 100;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellActivation = Activation.NoEdit;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellClickAction = CellClickAction.EditAndSelectText;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Hidden = true;
                                order++;
                            }

                            if (column.Key.StartsWith("Stato_"))
                            {
                                var data = DateTime.Parse(column.Key.Split('_')[1]);
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.Caption = @"Stato - " + data.ToShortDateString();
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].ColumnChooserCaption = @"Stato per rata " + data.ToShortDateString();
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Hidden = true;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.VisiblePosition = order;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Width = 90;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellActivation = Activation.NoEdit;
                                order++;
                            }

                            if (column.Key.StartsWith("NumeroSolleciti_"))
                            {
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.Caption = @"Soll.";
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].ColumnChooserCaption = @"Solleciti";
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Hidden = true;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.VisiblePosition = order;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Width = 50;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellActivation = Activation.NoEdit;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                                order++;
                            }
                            if (column.Key.StartsWith("Alert_"))
                            {
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.Caption = @"Alert";
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].ColumnChooserCaption = @"Alert";
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Hidden = true;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.VisiblePosition = order;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Width = 150;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].CellActivation = Activation.NoEdit;
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                                order++;
                            }

                            // Sostituisco alla caption un'eventuale caption personalizzata
                            if (columnCaption != null && columnCaption.ContainsKey(column.Key))
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns[column.Key].Header.Caption = columnCaption[column.Key];
                            listaRateSoggetti.DisplayLayout.Override.WrapHeaderText = DefaultableBoolean.True;

                        }
                        catch (Exception ex)
                        {
                            _log.ErrorFormat("Errore inaspettato durante la impostazione del layout della grid - SINGOLA COLONNA - {0} - column:{1} - condominio:{1} - esercizio:{2}", ex, Utility.GetMethodDescription(), column.Key, _condominio.ID, _esercizio.ID);
                        }
                    }

                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["TotaleImporto"].Header.Caption = @"Totale";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["TotaleImporto"].ColumnChooserCaption = @"Totale Importo";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["TotaleImporto"].Format = @"c";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["TotaleImporto"].CellAppearance.TextHAlignAsString = @"Right";
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["TotaleImporto"].Header.VisiblePosition = order;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["TotaleImporto"].Width = 100;
                    listaRateSoggetti.DisplayLayout.Bands[0].Columns["TotaleImporto"].CellActivation = Activation.NoEdit;
                }
                else if (tipoLista == TipoListaRate.Editabile)
                {
                    listaRateSoggetti.DisplayLayout.Override.AllowRowFiltering = DefaultableBoolean.True;
                    listaRateSoggetti.DisplayLayout.Override.FilterUIType = FilterUIType.FilterRow;

                    listaRateSoggetti.DisplayLayout.Override.CellClickAction = CellClickAction.Default;
                    listaRateSoggetti.DisplayLayout.Override.AllowDelete = DefaultableBoolean.True;
                    listaRateSoggetti.DisplayLayout.Override.AllowUpdate = DefaultableBoolean.True;
                    listaRateSoggetti.DisplayLayout.Override.AllowAddNew = AllowAddNew.TemplateOnBottom;

                    var ultraGridColumn1 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DataScadenza"];
                    var ultraGridColumn2 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneUnitaImmobiliare"];
                    var ultraGridColumn3 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdEsercizio"];
                    var ultraGridColumn4 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdPianoDettaglioRatealeRiferimento"];
                    var ultraGridColumn5 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggettoCondominio"];
                    var ultraGridColumn6 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["Importo"];
                    var ultraGridColumn7 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["Progressivo"];
                    var ultraGridColumn8 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["ExtensionData"];
                    var ultraGridColumn9 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DisplayName"];
                    var ultraGridColumn10 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["FrequentlyAccessed"];
                    var ultraGridColumn11 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["ID"];
                    var ultraGridColumn12 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IsDeleteAllow"];
                    var ultraGridColumn13 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["Stato"];
                    var ultraGridColumn14 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["Version"];
                    var ultraGridColumn15 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdUnitaImmobiliare"];
                    var ultraGridColumn16 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["StatoRata"];
                    var ultraGridColumn17 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneSoggettoCondominio"];
                    var ultraGridColumn18 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["ImportoPagato"];
                    var ultraGridColumn19 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["OrdineUnitaImmobiliare"];
                    var ultraGridColumn20 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdTestataEmissione"];
                    var ultraGridColumn21 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdDettaglioEmissione"];
                    var ultraGridColumn22 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DataEmissione"];
                    var ultraGridColumn23 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["TipoSoggettoCondominio"];
                    var ultraGridColumn24 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DeleteColumn"];
                    var ultraGridColumn25 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggettoEmissione"];
                    var ultraGridColumn26 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneSoggettoEmissione"];
                    var ultraGridColumn27 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["NumeroSolleciti"];
                    var ultraGridColumn28 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["Alert"];
                    var ultraGridColumn29 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DescrizioneEsercizio"];
                    var ultraGridColumn30 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdPersona"];
                    var ultraGridColumn31 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["VersamentiDopoChiusura"];
                    var ultraGridColumn32 = listaRateSoggetti.DisplayLayout.Bands[0].Columns["DataUltimoVersamento"];

                    ultraGridColumn11.ColumnChooserCaption = @"Identificativo";
                    ultraGridColumn11.Header.Caption = @"Id";
                    ultraGridColumn11.Header.VisiblePosition = 0;
                    ultraGridColumn11.Hidden = true;
                    ultraGridColumn11.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn4.ColumnChooserCaption = @"Identificativo Dettaglio Piano";
                    ultraGridColumn4.Header.Caption = @"Id.Dett.";
                    ultraGridColumn4.Header.VisiblePosition = 1;
                    ultraGridColumn4.Hidden = true;
                    ultraGridColumn4.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn3.ColumnChooserCaption = @"Identificativo Esercizio";
                    ultraGridColumn3.Header.Caption = @"Id.Es.";
                    ultraGridColumn3.Header.VisiblePosition = 2;
                    ultraGridColumn3.Hidden = true;
                    ultraGridColumn3.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn15.ColumnChooserCaption = @"Identificativo Unità Immobiliare";
                    ultraGridColumn15.Header.Caption = @"Id.Un.Imm.";
                    ultraGridColumn15.Header.VisiblePosition = 3;
                    ultraGridColumn15.Hidden = true;
                    ultraGridColumn15.ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                    ultraGridColumn15.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn7.ColumnChooserCaption = @"Progressivo";
                    ultraGridColumn7.Header.Caption = @"Prog.";
                    ultraGridColumn7.Header.VisiblePosition = 4;
                    ultraGridColumn7.Width = 47;
                    ultraGridColumn7.Hidden = true;
                    ultraGridColumn7.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn19.Header.VisiblePosition = 5;
                    ultraGridColumn19.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn5.ColumnChooserCaption = @"Nominativo";
                    ultraGridColumn5.Header.Caption = @"Nominativo";
                    ultraGridColumn5.Header.VisiblePosition = 6;
                    ultraGridColumn5.Style = ColumnStyle.DropDownList;
                    ultraGridColumn5.CellActivation = Activation.AllowEdit;
                    ultraGridColumn5.Width = 274;

                    ultraGridColumn9.ColumnChooserCaption = @"Descrizione Rata";
                    ultraGridColumn9.Header.Caption = @"Descr.Rata";
                    ultraGridColumn9.Header.VisiblePosition = 7;
                    ultraGridColumn9.Width = 275;
                    ultraGridColumn9.CellActivation = Activation.ActivateOnly;
                    ultraGridColumn9.Hidden = true;

                    ultraGridColumn2.ColumnChooserCaption = @"Unità Immobiliare";
                    ultraGridColumn2.Header.Caption = @"Unità Immobiliare";
                    ultraGridColumn2.Header.VisiblePosition = 8;
                    ultraGridColumn2.Width = 283;
                    ultraGridColumn2.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn1.ColumnChooserCaption = @"Data Scadenza";
                    ultraGridColumn1.Header.Caption = @"Data";
                    ultraGridColumn1.Header.VisiblePosition = 9;
                    ultraGridColumn1.Style = ColumnStyle.Date;
                    ultraGridColumn1.Width = 80;

                    ultraGridColumn6.CellAppearance.TextHAlignAsString = @"Right";
                    ultraGridColumn6.Header.VisiblePosition = 10;
                    ultraGridColumn6.Style = ColumnStyle.Currency;
                    ultraGridColumn6.Format = @"c";
                    ultraGridColumn6.Nullable = Nullable.Nothing;
                    ultraGridColumn6.Width = 100;

                    ultraGridColumn18.ColumnChooserCaption = @"Importo Versato";
                    ultraGridColumn18.Header.Caption = @"Versato";
                    ultraGridColumn18.Header.VisiblePosition = 11;
                    ultraGridColumn18.Format = @"c";
                    ultraGridColumn18.Width = 100;
                    ultraGridColumn18.Hidden = true;
                    ultraGridColumn18.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn22.ColumnChooserCaption = @"Data Emissione";
                    ultraGridColumn22.Header.Caption = @"Dt.Emiss.";
                    ultraGridColumn22.Header.VisiblePosition = 12;
                    ultraGridColumn22.CellActivation = Activation.NoEdit;
                    ultraGridColumn22.Style = ColumnStyle.Date;
                    ultraGridColumn22.Width = 80;

                    ultraGridColumn23.ColumnChooserCaption = @"Proprietario o Conduttore";
                    ultraGridColumn23.Header.Caption = @"P/C";
                    ultraGridColumn23.Header.VisiblePosition = 13;
                    ultraGridColumn23.CellActivation = Activation.ActivateOnly;
                    ultraGridColumn23.Width = 70;

                    ultraGridColumn31.ColumnChooserCaption = @"Versamento Dopo Chiusura";
                    ultraGridColumn31.Header.Caption = @"Dopo Ch.";
                    ultraGridColumn31.Header.VisiblePosition = 19;
                    ultraGridColumn31.CellActivation = Activation.ActivateOnly;
                    ultraGridColumn31.Width = 70;

                    ultraGridColumn16.ColumnChooserCaption = @"Stato";
                    ultraGridColumn16.Header.Caption = @"Stato";
                    ultraGridColumn16.Header.VisiblePosition = 20;
                    ultraGridColumn16.Hidden = true;
                    ultraGridColumn16.Width = 80;
                    ultraGridColumn16.CellActivation = Activation.ActivateOnly;


                    ultraGridColumn8.ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                    ultraGridColumn8.Header.VisiblePosition = 13;
                    ultraGridColumn8.Hidden = true;

                    ultraGridColumn10.ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                    ultraGridColumn10.Header.VisiblePosition = 14;
                    ultraGridColumn10.Hidden = true;

                    ultraGridColumn12.ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                    ultraGridColumn12.Header.VisiblePosition = 15;
                    ultraGridColumn12.Hidden = true;

                    ultraGridColumn13.ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                    ultraGridColumn13.Header.VisiblePosition = 16;
                    ultraGridColumn13.Hidden = true;

                    ultraGridColumn14.ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                    ultraGridColumn14.Header.VisiblePosition = 17;
                    ultraGridColumn14.Hidden = true;

                    ultraGridColumn17.ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                    ultraGridColumn17.Header.VisiblePosition = 18;
                    ultraGridColumn17.Hidden = true;

                    ultraGridColumn20.ColumnChooserCaption = @"Identificativo Testata Emissione";
                    ultraGridColumn20.Header.Caption = @"Id.Test.Emiss.";
                    ultraGridColumn20.Header.VisiblePosition = 3;
                    ultraGridColumn20.Hidden = true;
                    ultraGridColumn20.CellActivation = Activation.NoEdit;

                    ultraGridColumn21.ColumnChooserCaption = @"Identificativo Dettaglio Emissione";
                    ultraGridColumn21.Header.Caption = @"Id.Dett.Emissione.";
                    ultraGridColumn21.Header.VisiblePosition = 3;
                    ultraGridColumn21.Hidden = true;
                    ultraGridColumn21.CellActivation = Activation.NoEdit;

                    ultraGridColumn25.ColumnChooserCaption = @"Identificativo Soggetto Emissione";
                    ultraGridColumn25.Header.Caption = @"Id Sogg.Emissione";
                    ultraGridColumn25.Header.VisiblePosition = 19;
                    ultraGridColumn25.Hidden = true;
                    ultraGridColumn25.Width = 35;

                    ultraGridColumn26.ColumnChooserCaption = @"Soggetto Emissione";
                    ultraGridColumn26.Header.Caption = @"Soggetto Emissione";
                    ultraGridColumn26.Header.VisiblePosition = 20;
                    ultraGridColumn26.Hidden = true;
                    ultraGridColumn26.Width = 35;

                    ultraGridColumn27.ColumnChooserCaption = @"Numero Solleciti";
                    ultraGridColumn27.Header.Caption = @"Solleciti";
                    ultraGridColumn27.Header.VisiblePosition = 21;
                    ultraGridColumn27.Hidden = true;
                    ultraGridColumn27.Width = 40;

                    ultraGridColumn28.ColumnChooserCaption = @"Alert";
                    ultraGridColumn28.Header.Caption = @"Alert";
                    ultraGridColumn28.Header.VisiblePosition = 21;
                    ultraGridColumn28.Hidden = true;
                    ultraGridColumn28.Width = 40;

                    ultraGridColumn29.ExcludeFromColumnChooser = ExcludeFromColumnChooser.True;
                    ultraGridColumn29.Header.VisiblePosition = 29;
                    ultraGridColumn29.Hidden = true;

                    ultraGridColumn30.Header.VisiblePosition = 2;
                    ultraGridColumn30.Header.Caption = @"Id.Pers.";
                    ultraGridColumn30.Hidden = true;

                    ultraGridColumn32.ColumnChooserCaption = @"Data Ultimo Versamento";
                    ultraGridColumn32.Header.Caption = @"Dt.Ult.Vers.";
                    ultraGridColumn32.Header.VisiblePosition = 40;
                    ultraGridColumn32.Width = 47;
                    ultraGridColumn32.Hidden = true;
                    ultraGridColumn32.CellActivation = Activation.ActivateOnly;

                    ultraGridColumn24.Hidden = false;

                }                
            }
            catch(Exception ex)
            {
                _log.ErrorFormat("Errore inaspettato durante la impostazione del layout della grid - {0} - condominio:{1} - esercizio:{2}", ex, Utility.GetMethodDescription(), _condominio.ID, _esercizio.ID);
                throw;
            }
        }
Esempio n. 3
0
        public void LoadData(CondominioDTO condominio, EsercizioDTO esercizio, TipoListaRate tipoLista, bool isAllowEmpty, bool rateAcconto, TipoAccorpamentoRateEnum tipo)
        {
            try
            {
                Clear();

                _condominio = condominio;
                _esercizio = esercizio;
                _tipo = tipo;
                _rateAcconto = rateAcconto;

                if (condominio != null && esercizio != null && listaRateSoggetti != null)
                {
                    loadConti();
                    _pianoRateale = getRateCondominiService().GetPianoRatealeByEsercizio(_esercizio.ID, false);
                    if (_pianoRateale != null &&  _pianoRateale.ID > 0)
                        _tipo = _pianoRateale.Tipo;

                    var form = new ExecuteLoadDataListAsync<RataSoggettoDTO>("Le rate sono in corso di caricamento ....." + Environment.NewLine + "Si prega di attendere.");
                    Func<List<RataSoggettoDTO>> loadDati = () => getRateCondominiService().GetByEsercizio(esercizio.ID);
                    form.LoadData(loadDati);
                    form.ShowDialog();

                    if (form.DataSourceObject == null)
                    {
                        ParentForm?.Close();
                        return;
                    }

                    _rateSoggetti = form.DataSourceObject;
                    form.Dispose();

                    var formSaldi = new ExecuteLoadDataObjectAsync<ResultSaldiCondomini>("I saldi dei condomini sono in corso di caricamento ....." + Environment.NewLine + "Si prega di attendere.");
                    Func<ResultSaldiCondomini> loadSaldi = () => getRateCondominiService().GetSaldiSoggetti(esercizio.ID, null, null, _tipo);
                    formSaldi.LoadData(loadSaldi);
                    formSaldi.ShowDialog();

                    if ((string.IsNullOrEmpty(formSaldi.DataSourceObject.Message) && formSaldi.DataSourceObject.Saldi != null) ||  !_isCreazione)
                    {

                        _saldiSoggetti = formSaldi.DataSourceObject.Saldi;
                        formSaldi.Dispose();
                        if (_rateSoggetti.Count > 0 || isAllowEmpty)
                        {
                            btnStampa.Visible = true;
                            btnConferma.Visible = true;
                            chkDataEmissione.Visible = true;
                            sceltaTipoLista.Visible = true;
                            listaRateSoggetti.Visible = true;

                            if (_isCreazione)
                            {
                                btnStampa.Visible = false;
                                nuovaDataPanel.Visible = false;
                            }
                            else
                            {
                                btnStampa.Visible = true;
                                nuovaDataPanel.Visible = true;
                            }

                            // Se è ancora a null carico la lista dei soggetti relativi all'esercizio.
                            if (_soggetti == null)
                                _soggetti = getRateCondominiService().GetPartecipanti(esercizio.ID, _tipo);

                            if (tipoLista == TipoListaRate.Pivot)
                            {
                                try
                                {
                                    var resultMessage = getRateCondominiService().ConvertRateSoggettiToPivot(_rateSoggetti, _saldiSoggetti, null, _allowInvertiSegno, _pianoRateale, _isCreazione);
                                    if (resultMessage.DataTable == null)
                                    {
                                        CommonMessages.DisplayWarning(string.Format("Si sono verificati i seguenti errori:{1}{0}{1}Si prega di riprovare", resultMessage.FatalMessage, Environment.NewLine));
                                        ParentForm?.Close();
                                        return;
                                    }
 
                                    listaRateSoggetti.DataSource = resultMessage.DataTable;
                                    setGridLayout(tipoLista);
                                    setRowsLayout();
                                }
                                catch (Exception ex)
                                {
                                    _log.ErrorFormat("Errore inaspettato durante il caricamento delle rate - DATA SOURCE - {0} - condominio:{1} - esercizio:{2}", ex, Utility.GetMethodDescription(), _condominio.ID, _esercizio.ID);
                                }
                            }
                            else if (tipoLista == TipoListaRate.Editabile)
                            {
                                listaRateSoggetti.DataSource = _rateSoggetti;

                                listaRateSoggetti.DisplayLayout.ValueLists.Clear();
                                listaRateSoggetti.DisplayLayout.ValueLists.Add(DataSourceHelper.GetValueList(_soggetti, "ID", "DisplayNominativo", "SoggettiCondominio"));
                                listaRateSoggetti.DisplayLayout.Bands[0].Columns["IdSoggettoCondominio"].ValueList = listaRateSoggetti.DisplayLayout.ValueLists["SoggettiCondominio"];
                                setGridLayout(tipoLista);
                            }

                            listaRateSoggetti.DisplayLayout.Bands[0].Summaries.Clear();
                            foreach (var column in listaRateSoggetti.DisplayLayout.Bands[0].Columns)
                            {
                                if (column.DataType == typeof (decimal))
                                    DataGridHelper.AddSummary(listaRateSoggetti.DisplayLayout.Bands[0], column.Key, "c");
                            }
                        }
                        else
                        {
                            listaRateSoggetti.DataSource = new List<RataSoggettoDTO>();
                            CommonMessages.DisplayWarning("Non sono presenti rate.");
                            var parentForm = _parentForm as MainContabilita;
                            if (parentForm != null)
                                parentForm.ToClose = true;
                            else if (ParentForm != null)
                                ((MainContabilita) ParentForm).ToClose = true;
                        }

                        listaRateSoggetti.PerformAction(UltraGridAction.FirstRowInBand);

                        loadPianoRateale();
                    }
                    else
                    {
                        CommonMessages.DisplayWarning($"Si sono verificati degli errori nel caricamento dei saldi:{Environment.NewLine}{formSaldi.DataSourceObject.Message}");
                        formSaldi.Dispose();
                    }
                }

            }
            catch (Exception ex)
            {
                _log.ErrorFormat("Errore inaspettato durante il caricamento dei dati del piano rateale - 1 - {0} - condominio:{1} - esercizio:{2}", ex, Utility.GetMethodDescription(), _condominio.ID, _esercizio.ID);
                throw;
            }
        }