private void bSalva_Click(object sender, EventArgs e)
        {
            this.Enabled = false;
            Application.DoEvents();

            List <DB.DataWrapper.cMovimenti.sMacroArea_e_Descrizione> m = new List <DB.DataWrapper.cMovimenti.sMacroArea_e_Descrizione>();

            foreach (cGroupList i in pArea.Controls)
            {
                for (int x = 0; x < i.Count; x++)
                {
                    m.Add(new DB.DataWrapper.cMovimenti.sMacroArea_e_Descrizione()
                    {
                        MacroArea   = i.Text,
                        Descrizione = i.Items[x].ToString()
                    });
                }
            }

            if (m.Count > -1)
            {
                DB.DataWrapper.cMovimenti mov = new DB.DataWrapper.cMovimenti();
                int j = mov.AggiornaMacroAree(m);

                cGB.MsgBox("Aggiornati " + j + " elementi!");
            }

            this.Enabled = true;
        }
        public fInserimentoPeriodico(string Tipo_)
        {
            InitializeComponent();

            if (!cGB.DesignTime)
            {
                Tipo = Tipo_;

                var p = new DB.DataWrapper.cPeriodici();
                var m = new DB.DataWrapper.cMovimenti();
                var c = new DB.DataWrapper.cCasse();

                cbCassa.ValueMember   = "Nome";
                cbCassa.DisplayMember = "Nome";
                cbCassa.DataSource    = c.ListaCasse();
                cbCassa.SelectedValue = Tipo;

                cbPeriodicita.ValueMember   = "ID";
                cbPeriodicita.DisplayMember = "Valore";
                cbPeriodicita.Items.AddRange(p.Periodicita_cComboItems());

                eDescrizione.AutoCompleteCustomSource = m.TutteLeDescrizioni();
                eMacroArea.AutoCompleteCustomSource   = m.TutteLeMacroAree();
                eData.Value_ = DateTime.Now;
                eNome.Text   = cGB.UtenteConnesso.UserName;
                cbPeriodicita.SelectedIndex = 0;
            }
        }
        private void Inita()
        {
            var m = new DB.DataWrapper.cMovimenti();

            eDa.Value = new DateTime(2005, 1, 1, 0, 0, 0);
            eA.Value  = cGB.DateTo235959(DateTime.Now.AddYears(1));
            cbImporti.SelectedIndex = 2;

            Cerca();
        }
Example #4
0
        public fInserimento()
        {
            InitializeComponent();

            var m = new DB.DataWrapper.cMovimenti();

            eDescrizione.AutoCompleteCustomSource = m.TutteLeDescrizioni();
            eMacroArea.AutoCompleteCustomSource   = m.TutteLeMacroAree();
            eData.Value_ = DateTime.Now;
            eNome.Text   = cGB.UtenteConnesso.UserName;
        }
Example #5
0
        private int NumeroMovimentiContenuti()
        {
            var tot = 0;

            if (!ID__.Equals(eNome.Text, StringComparison.OrdinalIgnoreCase))
            {
                var m = new DB.DataWrapper.cMovimenti();
                tot += m.NumeroMovimentiPerCassa(ID__);
                tot += m.NumeroMovimentiPerCassa(eNome.Text);
            }

            return(tot);
        }
Example #6
0
        private void Inita()
        {
            var m = new DB.DataWrapper.cMovimenti();

            m.IntervalloDate(out MinDate, out MaxDate);

            eDescrizione.AutoCompleteCustomSource = m.TutteLeDescrizioni();
            eMacroArea.AutoCompleteCustomSource   = m.TutteLeMacroAree();
            eDa.Value = cGB.DateTo00000(MinDate);
            eA.Value  = cGB.DateTo235959(MaxDate.AddMonths(3));
            cbPeriodicita.SelectedIndex = 0;

            Cerca();
        }
Example #7
0
        public string GetMacroArea4Descrizione(string desc_)
        {
            var m = new DB.DataWrapper.cMovimenti();
            var a = m.MacroAree_e_Descrizioni();

            foreach (var i in a)
            {
                if (i.Descrizione.Equals(desc_, StringComparison.OrdinalIgnoreCase))
                {
                    return(eMacroArea.Text = i.MacroArea);
                }
            }

            return("");
        }
Example #8
0
        private void LoadData(bool ReloadCashInTreeView, GB.cFiltriRicerca f)
        {
            var ImSaldo = (CashName == "Saldo");
            var cc      = (f.bCassa ? f.Cassa : CashName);

            FiltriAttuali = f;

            var m = new DB.DataWrapper.cMovimenti()
            {
                tipo        = cc,
                descrizione = cGB.QQ(f.Descrizione, f.bDescrizione),
                MacroArea   = cGB.QQ(f.MacroAree, f.bMacroAree),
                SoldiDa     = f.SoldiDa,
                SoldiA      = f.SoldiA,
                bSoldi      = f.bSoldi,
                bData       = f.bData,
                DataA       = f.DataA,
                DataDa      = f.DataDa
            };

            UltimaRicerca             = m.Ricerca(out Query);
            bindingSource1.DataSource = UltimaRicerca;
            CurSaldo    = m.Saldo(cc);
            lSaldo.Text = cGB.DoubleToMoneyStringValuta(CurSaldo, CashName);

            var R = Math.Round(CurSaldo, 2);

            if (R != 0)
            {
                if (CurSaldo > 0)
                {
                    iSaldo.Image = Properties.Resources.arrowGreen;
                }
                else if (CurSaldo < 0)
                {
                    iSaldo.Image = Properties.Resources.arrowRed;
                }
            }

            bNuovo.Enabled     = !ImSaldo;
            bGiroconto.Enabled = !ImSaldo;
            bPeriodico.Enabled = !ImSaldo;

            if (ReloadCashInTreeView)
            {
                cGB.RationesCurareMainForm.LoadAllCash();
            }
        }
        private void eDescrizione_Leave(object sender, EventArgs e)
        {
            if ((eMacroArea.Text == "") || (eMacroArea.Text == null))
            {
                var m = new DB.DataWrapper.cMovimenti();
                var a = m.MacroAree_e_Descrizioni();

                foreach (var i in a)
                {
                    if (i.Descrizione.Equals(eDescrizione.Text, StringComparison.OrdinalIgnoreCase))
                    {
                        eMacroArea.Text = i.MacroArea;
                        break;
                    }
                }
            }
        }
Example #10
0
        private void bElimina_Click(object sender, EventArgs e)
        {
            if (MsgElimina())
            {
                var i = SelectedID;

                if (i > -1)
                {
                    var m = new DB.DataWrapper.cMovimenti();
                    m.Elimina(i);

                    LoadData(true);
                }
            }

            dataGridView1.Focus();
        }
Example #11
0
        public void LoadAllCash()
        {
            var m = new DB.DataWrapper.cMovimenti();

            bSaldo.Text       = bSaldo_Text + ": " + cGB.DoubleToMoneyStringValuta(m.Saldo("Saldo"), "saldo");
            bAvere.Text       = bAvere_Text + ": " + cGB.DoubleToMoneyStringValuta(m.Saldo("Avere"), "avere");
            bDare.Text        = bDare_Text + ": " + cGB.DoubleToMoneyStringValuta(m.Saldo("Dare"), "dare");
            bCassaforte.Text  = bCassaforte_Text + ": " + cGB.DoubleToMoneyStringValuta(m.Saldo("Cassaforte"), "cassaforte");
            bPortafoglio.Text = bPortafoglio_Text + ": " + cGB.DoubleToMoneyStringValuta(m.Saldo("Portafogli"), "portafogli");
            bSalvadanaio.Text = bSalvadanaio_Text + ": " + cGB.DoubleToMoneyStringValuta(m.Saldo("Salvadanaio"), "salvadanaio");

            bSaldo.ForeColor       = SaldoToColor(m.Saldo("Saldo"));
            bAvere.ForeColor       = SaldoToColor(m.Saldo("Avere"));
            bDare.ForeColor        = SaldoToColor(m.Saldo("Dare"));
            bCassaforte.ForeColor  = SaldoToColor(m.Saldo("Cassaforte"));
            bPortafoglio.ForeColor = SaldoToColor(m.Saldo("Portafogli"));
            bSalvadanaio.ForeColor = SaldoToColor(m.Saldo("Salvadanaio"));

            if (CasseAggiuntive != null)
            {
                if (CasseAggiuntive.Count > 0)
                {
                    foreach (var caz in CasseAggiuntive)
                    {
                        foreach (TreeNode item in nCasse.Nodes)
                        {
                            if (item.Name.Equals(caz.nome))
                            {
                                var saldC = m.Saldo(caz.nome);

                                item.Text      = caz.nome + ": " + cGB.DoubleToMoneyStringValuta(saldC, caz.nome);
                                item.ForeColor = SaldoToColor(saldC);
                            }
                        }
                    }
                }
            }

            cAlbero.Select();
        }
Example #12
0
        private void SalvaNormale()
        {
            var m = new DB.DataWrapper.cMovimenti()
            {
                ID          = ID__,
                nome        = eNome.Text,
                soldi       = eSoldi.Value,
                data        = eData.Value_,
                descrizione = eDescrizione.Text,
                MacroArea   = eMacroArea.Text,
                tipo        = (Tipo.Equals("Saldo", StringComparison.OrdinalIgnoreCase) ? TipoLoaded : Tipo)
            };

            if (m.Salva() < 1)
            {
                MsgErroreSalvataggio();
            }
            else
            {
                this.DialogResult = DialogResult.OK;
            }
        }
Example #13
0
        private void SalvaGiroconto()
        {
            var s = 0;

            var m1 = new DB.DataWrapper.cMovimenti()
            {
                ID          = ID__,
                nome        = eNome.Text,
                soldi       = eSoldi.Value,
                data        = eData.Value_,
                descrizione = eDescrizione.Text,
                MacroArea   = eMacroArea.Text,
                tipo        = (Tipo.Equals("Saldo", StringComparison.OrdinalIgnoreCase) ? TipoLoaded : Tipo)
            };

            var m2 = new DB.DataWrapper.cMovimenti()
            {
                ID          = ID__,
                nome        = eNome.Text,
                soldi       = -1 * eSoldi.Value,
                data        = eData.Value_,
                descrizione = eDescrizione.Text,
                MacroArea   = eMacroArea.Text,
                tipo        = TipoGiroconto
            };

            s += m1.Salva();
            s += m2.Salva();

            if (s == 2)
            {
                this.DialogResult = DialogResult.OK;
            }
            else
            {
                MsgErroreSalvataggio();
            }
        }
Example #14
0
        public cRicerca(string AutoSetCassa_)
        {
            InitializeComponent();

            if (!DesignTime)
            {
                LatoDaDisegnare = new sLatoBordo()
                {
                    Setted = true
                };

                AutoSetCassa = AutoSetCassa_;
                AcceptButton = bCerca;
                AutoFocus    = eDataDa;

                var m = new DB.DataWrapper.cMovimenti();
                eDescrizione.AutoCompleteCustomSource = m.TutteLeDescrizioni();
                eMacroArea.AutoCompleteCustomSource   = m.TutteLeMacroAree();
                eDataDa.Value = new DateTime(2005, 1, 1);
                eDataA.Value  = cGB.DateTo235959(DateTime.Now.AddYears(1));

                Carica();
            }
        }
Example #15
0
        public void Cerca()
        {
            this.Enabled = false;
            var ancheFuturi = cbPrevisti.Checked;

            try
            {
                var mov = new DB.DataWrapper.cMovimenti()
                {
                    DataDa      = cGB.DateTo00000(eDa.Value),
                    DataA       = cGB.DateTo235959(eA.Value),
                    descrizione = cGB.QQ(eDescrizione.Text),
                    MacroArea   = cGB.QQ(eMacroArea.Text)
                };

                Totale = mov.RicercaGraficoSaldo();
                grafico.Series.Clear();

                using (var data_reader = mov.RicercaGrafico(cbPeriodicita.SelectedIndex == 1))
                {
                    var NumCorre        = -1;
                    var serie_nuova     = CreaSerie();
                    var DataPrec        = default(DateTime);
                    var DataAct         = default(DateTime);
                    var DateUsate       = new List <string>();
                    var tipo_intervallo = (cbPeriodicita.SelectedIndex == 1 ? eTipoData.Anno : eTipoData.Mese);

                    try
                    {
                        if (data_reader.HasRows)
                        {
                            while (data_reader.Read())
                            {
                                NumCorre += 1;
                                var LaData = data_reader.GetString(0);
                                DateUsate.Add(LaData);

                                DataPrec = DataAct;
                                DataAct  = StringYYYYMMToDate(LaData);
                                var soldi = cGB.ObjectToMoney(data_reader[1]);
                                var data_point_attuale = CreaDataPoint(LaData, soldi);

                                //inserire un datapoint vuoto se non ho dati nel db per quella data
                                if (DataPrec != DateTime.MinValue)
                                {
                                    if (DateDiff(tipo_intervallo, DataPrec, DataAct) != 1)
                                    {
                                        var differenza_date = DiffDate(tipo_intervallo, DataPrec, DataAct);

                                        for (var u = 0; u < (differenza_date?.Length ?? 0); u++)
                                        {
                                            if (differenza_date[u] != LaData)
                                            {
                                                var data_point_vuoto_no_dati_su_db = new System.Windows.Forms.DataVisualization.Charting.DataPoint()
                                                {
                                                    YValues   = DoubleToDataPointDouble(0D),
                                                    ToolTip   = ToEuroWithDate(0D, differenza_date[u]),
                                                    AxisLabel = differenza_date[u],
                                                    Color     = Color.Green
                                                };

                                                DateUsate.Add(differenza_date[u]);
                                                serie_nuova.Points.Insert(NumCorre, data_point_vuoto_no_dati_su_db);

                                                NumCorre += 1;
                                            }
                                        }
                                    }
                                }

                                serie_nuova.Points.Insert(NumCorre, data_point_attuale);
                            } //fine lettura DB
                        }
                        if (ancheFuturi)
                        {
                            var daAggiungere    = false;
                            var val             = 0d;
                            var LaDataPeriodica = "";
                            var per             = new DB.DataWrapper.cPeriodici();
                            var movimenti       = per.RicercaScadenzeCalcolate(eDa.Value, eA.Value);

                            for (var i = 0; i < movimenti.Count; i++)
                            {
                                daAggiungere    = false;
                                LaDataPeriodica = movimenti[i].GiornoDelMese.ToString(tipo_intervallo == eTipoData.Mese ? "yyyy/MM" : "yyyy");
                                val            += movimenti[i].soldi_d;

                                if (i < movimenti.Count - 1)
                                {
                                    if (LaDataPeriodica != movimenti[i + 1].GiornoDelMese.ToString(tipo_intervallo == eTipoData.Mese ? "yyyy/MM" : "yyyy"))
                                    {
                                        daAggiungere = true;
                                    }
                                }
                                else
                                {
                                    daAggiungere = true;
                                }

                                if (daAggiungere)
                                {
                                    if (DateUsate.Contains(LaDataPeriodica))
                                    {
                                        for (var v = 0; v < serie_nuova.Points.Count; v++)
                                        {
                                            if (serie_nuova.Points[v].AxisLabel.Equals(LaDataPeriodica, StringComparison.OrdinalIgnoreCase))
                                            {
                                                serie_nuova.Points[v] = CreaDataPoint(LaDataPeriodica, serie_nuova.Points[v].YValues[0] + val, Color.Blue, Color.Brown);
                                                break;
                                            }
                                        }
                                    }
                                    else
                                    {
                                        NumCorre++;
                                        var e = CreaDataPoint(LaDataPeriodica, val, Color.Blue, Color.Brown);
                                        serie_nuova.Points.Insert(NumCorre, e);
                                    }

                                    val = 0;
                                }
                            }

                            Totale = 0;
                            for (var v = 0; v < serie_nuova.Points.Count; v++)
                            {
                                Totale += serie_nuova.Points[v].YValues[0];
                            }
                        } //fine movimenti futuri

                        this.gbGrafico.Text = "Grafico dei movimenti - Saldo = " + cGB.DoubleToMoneyStringValuta(Totale);
                        serie_nuova.Name    = "Saldo = " + cGB.DoubleToMoneyStringValuta(Totale);
                        grafico.Series.Add(serie_nuova);
                    }
                    finally
                    {
                        data_reader.Close();
                    }
                } //using data_reader
            }
            finally
            {
                SettaTitolo();
                this.Enabled = true;

                foreach (var area in grafico.ChartAreas)
                {
                    area.RecalculateAxesScale();
                }
            }
        }
Example #16
0
        private int NumeroMovimentiContenuti(string nome)
        {
            var m = new DB.DataWrapper.cMovimenti();

            return(m.NumeroMovimentiPerCassa(nome));
        }
        public void Cerca()
        {
            this.Enabled = false;

            try
            {
                var mov = new DB.DataWrapper.cMovimenti()
                {
                    DataDa = cGB.DateTo00000(eDa.Value),
                    DataA  = cGB.DateTo235959(eA.Value)
                };

                var positivita = 0;
                var NumCorre   = -1;
                var area       = "Altro";

                grafico.Series.Clear();

                if (cbImporti.SelectedIndex == 0)
                {
                    positivita = -1;
                }
                else if (cbImporti.SelectedIndex == 1)
                {
                    positivita = 1;
                }

                Totale = mov.RicercaGraficoTortaSaldo(positivita);

                using (var data_reader = mov.RicercaTorta(positivita))
                {
                    var serie_nuova = new System.Windows.Forms.DataVisualization.Charting.Series();
                    serie_nuova.ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Pie;
                    serie_nuova.SmartLabelStyle.Enabled = true;
                    serie_nuova["DrawingStyle"]         = ColoreBarra;

                    try
                    {
                        if (data_reader.HasRows)
                        {
                            while (data_reader.Read())
                            {
                                var soldi = cGB.ObjectToMoney(data_reader[1]);

                                try
                                {
                                    area = data_reader.GetString(0);

                                    if (area == null || area.Equals(""))
                                    {
                                        area = "Altro";
                                    }
                                }
                                catch
                                {
                                    area = "Altro";
                                }

                                if (soldi != 0)
                                {
                                    NumCorre += 1;

                                    var datapoint_attuale = new System.Windows.Forms.DataVisualization.Charting.DataPoint()
                                    {
                                        LegendText = ToEuroWithString(soldi, area),
                                        AxisLabel  = area,
                                        YValues    = DoubleToDataPointDouble(soldi),
                                        ToolTip    = soldi.ToString("c")
                                    };

                                    serie_nuova.Points.Insert(NumCorre, datapoint_attuale);
                                }
                            }
                        }

                        this.gbGrafico.Text = "Grafico a torta - Saldo = " + cGB.DoubleToMoneyStringValuta(Totale);
                        serie_nuova.Name    = "Saldo = " + cGB.DoubleToMoneyStringValuta(Totale);

                        grafico.Series.Add(serie_nuova);
                    }
                    finally
                    {
                        data_reader.Close();
                    }
                }
            }
            finally
            {
                SettaTitolo();
                this.Enabled = true;

                foreach (var a in grafico.ChartAreas)
                {
                    a.RecalculateAxesScale();
                }
            }
        }
Example #18
0
        public void Action(eActions a, bool ByUser = false)
        {
            LastSelectedNode = cAlbero.SelectedNode;

            if (a == eActions.Cassaforte)
            {
                ShowCash(bCassaforte);
            }
            else if (a == eActions.Salvadanaio)
            {
                ShowCash(bSalvadanaio);
            }
            else if (a == eActions.Dare)
            {
                ShowCash(bDare);
            }
            else if (a == eActions.Avere)
            {
                ShowCash(bAvere);
            }
            else if (a == eActions.Portafogli)
            {
                ShowCash(bPortafoglio);
            }
            else if (a == eActions.Saldo)
            {
                ShowCash(bSaldo);
            }
            else if (a == eActions.NuovoMovimento)
            {
                using (var sce = new fGiroconto()
                {
                    Titolo = "Scegli la cassa in cui vuoi inserire"
                })
                    if (sce.ShowDialog() == DialogResult.OK)
                    {
                        var mov = new DB.DataWrapper.cMovimenti();

                        using (var fi = new fInserimento()
                        {
                            Tipo = sce.CassaSelezionata,
                            Saldo = mov.Saldo(sce.CassaSelezionata)
                        })
                            if (fi.ShowDialog() == DialogResult.OK)
                            {
                                cGB.RationesCurareMainForm.LoadAllCash();
                            }
                    }
            }
            else if (a == eActions.NuovoGiroconto)
            {
                using (var sce = new fGiroconto()
                {
                    Titolo = "Scegli la cassa in cui vuoi inserire"
                })
                    if (sce.ShowDialog() == DialogResult.OK)
                    {
                        using (var g = new fGiroconto(sce.CassaSelezionata))
                            if (g.ShowDialog() == DialogResult.OK)
                            {
                                var mov = new DB.DataWrapper.cMovimenti();

                                using (var fi = new fInserimento()
                                {
                                    Modalita = fInserimento.eModalita.Giroconto,
                                    TipoGiroconto = g.CassaSelezionata,
                                    Tipo = sce.CassaSelezionata,
                                    Saldo = mov.Saldo(sce.CassaSelezionata)
                                })
                                    if (fi.ShowDialog() == DialogResult.OK)
                                    {
                                        cGB.RationesCurareMainForm.LoadAllCash();
                                    }
                            }
                    }
            }
            else if (a == eActions.Calendario)
            {
                var c = new Controlli.cCalendario();
                AddNewTab(c, "Calendario", Properties.Resources.calendario32);
            }
            else if (a == eActions.MacroAree)
            {
                var c = new Controlli.cMacroAree();
                AddNewTab(c, "Macro aree", Properties.Resources.MacroAree);
            }
            else if (a == eActions.OpzioniDB)
            {
                using (var d = new fOpzioniDb())
                    d.ShowDialog();
            }
            else if (a == eActions.Calcolatrice)
            {
                var d = new Controlli.fCalc()
                {
                    StartPosition = FormStartPosition.CenterScreen,
                    TopMost       = true,
                    ShowInTaskbar = true
                };

                d.Show();
            }
            else if (a == eActions.ControllaPromemoria)
            {
                var c = new DB.DataWrapper.cCalendario();

                if (c.PresenzaPromemoria())
                {
                    using (fPromemoria p = new fPromemoria())
                        p.ShowDialog();
                }
                else
                {
                    if (ByUser)
                    {
                        cGB.MsgBox("Nessun promemoria a breve scadenza.");
                    }
                }
            }
            else if (a == eActions.ControllaPeriodiciSoloAlert)
            {
                var c = new DB.DataWrapper.cPeriodici();
                var mov_periodici_entro_oggi = c.RicercaScadenzeEntroOggi_plus_X_Giorni(5);

                if (mov_periodici_entro_oggi != null)
                {
                    if (mov_periodici_entro_oggi.Count > 0)
                    {
                        foreach (var pi in mov_periodici_entro_oggi)
                        {
                            var dtd = DateTime.Now;
                            var MeseDaAggiungere = 0;

                            switch (pi.TipoGiornoMese)
                            {
                            case DB.DataWrapper.cPeriodici.ePeriodicita.G:
                                if (pi.PartendoDalGiorno.Year < 1900)
                                {
                                    dtd = cGB.DateToOnlyDate(new DateTime(DateTime.Now.Year, DateTime.Now.Month, pi.GiornoDelMese.Day).AddDays(pi.NumeroGiorni));
                                }
                                else
                                {
                                    dtd = cGB.DateToOnlyDate(new DateTime(DateTime.Now.Year, DateTime.Now.Month, pi.PartendoDalGiorno.Day).AddDays(pi.NumeroGiorni));
                                }
                                break;

                            case DB.DataWrapper.cPeriodici.ePeriodicita.M:
                                MeseDaAggiungere = 1;
                                break;

                            case DB.DataWrapper.cPeriodici.ePeriodicita.B:
                                MeseDaAggiungere = 2;
                                break;

                            case DB.DataWrapper.cPeriodici.ePeriodicita.T:
                                MeseDaAggiungere = 3;
                                break;

                            case DB.DataWrapper.cPeriodici.ePeriodicita.Q:
                                MeseDaAggiungere = 4;
                                break;

                            case DB.DataWrapper.cPeriodici.ePeriodicita.S:
                                MeseDaAggiungere = 6;
                                break;

                            case DB.DataWrapper.cPeriodici.ePeriodicita.A:
                                MeseDaAggiungere = 12;
                                break;
                            }

                            switch (pi.TipoGiornoMese)
                            {
                            case DB.DataWrapper.cPeriodici.ePeriodicita.M:
                            case DB.DataWrapper.cPeriodici.ePeriodicita.B:
                            case DB.DataWrapper.cPeriodici.ePeriodicita.T:
                            case DB.DataWrapper.cPeriodici.ePeriodicita.Q:
                            case DB.DataWrapper.cPeriodici.ePeriodicita.S:
                            case DB.DataWrapper.cPeriodici.ePeriodicita.A:
                                dtd = cGB.DateToOnlyDate(new DateTime(DateTime.Now.Year, DateTime.Now.Month, pi.GiornoDelMese.Day).AddMonths(MeseDaAggiungere));
                                break;
                            }

                            pi.GiornoDelMese = dtd;
                        }

                        mov_periodici_entro_oggi.Sort();

                        using (var f = new fPromemoriaPeriodici()
                        {
                            Movimenti = mov_periodici_entro_oggi
                        })
                            f.ShowDialog();
                    }
                }
            }
            else if (a == eActions.ControllaPeriodici)
            {
                var CiSono = false;
                var c      = new DB.DataWrapper.cPeriodici();
                var mov_periodici_entro_oggi = c.RicercaScadenzeEntroOggi();

                if (mov_periodici_entro_oggi != null)
                {
                    if (mov_periodici_entro_oggi.Count > 0)
                    {
                        CiSono = true;
                    }
                }

                if (CiSono)
                {
                    var QualcosaInserito = false;

                    if (cGB.MsgBox("Ci sono dei movimenti periodici da inserire, vuoi visualizzarli ora?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                    {
                        foreach (var pi in mov_periodici_entro_oggi)
                        {
                            using (var inz = new fInserimento())
                            {
                                var dtd = DateTime.Now;
                                var MeseDaAggiungere_ = 0;

                                switch (pi.TipoGiornoMese)
                                {
                                case DB.DataWrapper.cPeriodici.ePeriodicita.G:
                                    if (pi.PartendoDalGiorno.Year < 1900)
                                    {
                                        dtd = cGB.DateToOnlyDate(new DateTime(DateTime.Now.Year, DateTime.Now.Month, pi.GiornoDelMese.Day).AddDays(pi.NumeroGiorni));
                                    }
                                    else
                                    {
                                        dtd = cGB.DateToOnlyDate(new DateTime(DateTime.Now.Year, DateTime.Now.Month, pi.PartendoDalGiorno.Day).AddDays(pi.NumeroGiorni));
                                    }
                                    break;

                                case DB.DataWrapper.cPeriodici.ePeriodicita.M:
                                    MeseDaAggiungere_ = 1;
                                    break;

                                case DB.DataWrapper.cPeriodici.ePeriodicita.B:
                                    MeseDaAggiungere_ = 2;
                                    break;

                                case DB.DataWrapper.cPeriodici.ePeriodicita.T:
                                    MeseDaAggiungere_ = 3;
                                    break;

                                case DB.DataWrapper.cPeriodici.ePeriodicita.Q:
                                    MeseDaAggiungere_ = 4;
                                    break;

                                case DB.DataWrapper.cPeriodici.ePeriodicita.S:
                                    MeseDaAggiungere_ = 6;
                                    break;

                                case DB.DataWrapper.cPeriodici.ePeriodicita.A:
                                    MeseDaAggiungere_ = 12;
                                    break;
                                }

                                switch (pi.TipoGiornoMese)
                                {
                                case DB.DataWrapper.cPeriodici.ePeriodicita.M:
                                case DB.DataWrapper.cPeriodici.ePeriodicita.B:
                                case DB.DataWrapper.cPeriodici.ePeriodicita.T:
                                case DB.DataWrapper.cPeriodici.ePeriodicita.Q:
                                case DB.DataWrapper.cPeriodici.ePeriodicita.S:
                                case DB.DataWrapper.cPeriodici.ePeriodicita.A:
                                    dtd = cGB.DateToOnlyDate(new DateTime(DateTime.Now.Year, DateTime.Now.Month, pi.GiornoDelMese.Day).AddMonths(MeseDaAggiungere_));
                                    break;
                                }

                                inz.Tipo = pi.tipo;
                                inz.eDescrizione.Text = pi.descrizione;
                                inz.eMacroArea.Text   = ((pi.MacroArea == null || pi.MacroArea == "") ? inz.GetMacroArea4Descrizione(pi.descrizione) : pi.MacroArea);
                                inz.eNome.Text        = pi.nome;
                                inz.eSoldi.Value      = pi.soldi;

                                if (inz.ShowDialog() == DialogResult.OK)
                                {
                                    if (pi.TipoGiorniMese == 'G')
                                    {
                                        pi.GiornoDelMese     = new DateTime();
                                        pi.PartendoDalGiorno = dtd;
                                    }
                                    else
                                    {
                                        pi.PartendoDalGiorno = new DateTime();
                                        pi.GiornoDelMese     = dtd;
                                    }

                                    pi.Salva();
                                    QualcosaInserito = true;
                                }
                            }
                        }

                        if (QualcosaInserito)
                        {
                            LoadAllCash();
                        }
                    }
                }
                else
                {
                    if (ByUser)
                    {
                        cGB.MsgBox("Non ricorre nessun movimento periodico.");
                    }
                }
            }
            else if (a == eActions.GraficoSpline)
            {
                AddNewTabGrafico("RationesCurare7.UI.Controlli.cGraficoSpline", "Grafico a linee", Properties.Resources.grafico32);
            }
            else if (a == eActions.Grafico)
            {
                AddNewTabGrafico("RationesCurare7.UI.Controlli.cGrafico", "Grafico", Properties.Resources.grafico32);
            }
            else if (a == eActions.Torta)
            {
                AddNewTabGrafico("RationesCurare7.UI.Controlli.cGraficoTorta", "Torta", Properties.Resources.PieChart);
            }
            else if (a == eActions.MovimentiPeriodici)
            {
                var c = new Controlli.cMovimentiPeriodici();
                AddNewTab(c, "Movimenti periodici", Properties.Resources.perdioci32);
            }
            else if (a == eActions.Casse)
            {
                var c = new Controlli.cCasse();
                AddNewTab(c, "Casse", Properties.Resources.ingranaggio32);
            }
            else if (a == eActions.Novita)
            {
                var c = new Controlli.cNovita();
                AddNewTab(c, "Novità", Properties.Resources.star32);
            }
            else if (a == eActions.Cerca)
            {
                var c = new Controlli.cRicerca();
                AddNewTab(c, "Ricerca", Properties.Resources.find32);
            }
            else if (a == eActions.About)
            {
                var c = new Controlli.cAbout();
                AddNewTab(c, "About", Properties.Resources.about32);
            }
            else if (a == eActions.CosaNePensi)
            {
                var c = new Controlli.cCosaNePensi();
                AddNewTab(c, "Cosa ne pensi?", Properties.Resources.mail32);
            }

            cAlbero.SelectedNode = LastSelectedNode;
        }
        private void Carica()
        {
            string ulMA = "";

            DB.DataWrapper.cMovimenti mov = new DB.DataWrapper.cMovimenti();
            List <DB.DataWrapper.cMovimenti.sMacroArea_e_Descrizione> z = mov.MacroAree_e_Descrizioni();
            List <string> desc = mov.TutteLeDescrizioni_Array(false);

            gNoCat.ClearItems();
            pArea.Controls.Clear();

            if (desc != null)
            {
                if (desc.Count > 0)
                {
                    gNoCat.AddRange(desc);
                }
            }

            if (z != null)
            {
                if (z.Count > 0)
                {
                    int          g     = -1;
                    int          e     = -1;
                    string[]     elems = new string[z.Count];
                    cGroupList[] G     = new cGroupList[z.Count];

                    for (int i = 0; i < z.Count; i++)
                    {
                        if ((!ulMA.Equals(z[i].MacroArea, StringComparison.OrdinalIgnoreCase)) || (i == z.Count - 1))
                        {
                            if (g > -1)
                            {
                                if (e > -1)
                                {
                                    string[] elems2 = new string[e + 1];
                                    Array.Copy(elems, elems2, e + 1);

                                    G[g].AddRange(elems2);

                                    e = -1;
                                }
                            }

                            if (!ulMA.Equals(z[i].MacroArea, StringComparison.OrdinalIgnoreCase))
                            {
                                G[g += 1] = NewG(z[i].MacroArea);
                            }
                        }

                        elems[e += 1] = z[i].Descrizione;
                        ulMA          = z[i].MacroArea;
                    }

                    if (g > -1)
                    {
                        cGroupList[] G2 = new cGroupList[g + 1];
                        Array.Copy(G, G2, g + 1);
                        pArea.Controls.AddRange(G2);
                    }
                }
            }
        }
Example #20
0
        public void Cerca()
        {
            this.Enabled = false;

            try
            {
                var mov = new DB.DataWrapper.cMovimenti();

                Totale = mov.RicercaGraficoSaldo(false);
                grafico.Series.Clear();

                using (var data_reader = mov.RicercaGraficoSpline())
                {
                    var NumCorre    = -1;
                    var serie_nuova = CreaSerie();
                    var DataPrec    = default(DateTime);
                    var DataAct     = default(DateTime);
                    var DateUsate   = new List <string>();
                    var AnnoSoldi   = new SortedDictionary <string, double>();

                    try
                    {
                        if (data_reader.HasRows)
                        {
                            while (data_reader.Read())
                            {
                                NumCorre += 1;
                                var LaData = data_reader.GetString(0);
                                DateUsate.Add(LaData);

                                DataPrec = DataAct;
                                DataAct  = StringYYYYMMToDate(LaData);
                                var soldi   = cGB.ObjectToMoney(data_reader[1]);
                                var soldiDB = soldi;

                                foreach (var yyyy in AnnoSoldi)
                                {
                                    soldi += yyyy.Value;
                                }

                                AnnoSoldi[LaData] = soldiDB;

                                var data_point_attuale = CreaDataPoint(LaData, soldi);

                                //inserire un datapoint vuoto se non ho dati nel db per quella data
                                if (DataPrec != DateTime.MinValue)
                                {
                                    if (DateDiff(DataPrec, DataAct) != 1)
                                    {
                                        var differenza_date = DiffDate(DataPrec, DataAct);

                                        for (var u = 0; u < (differenza_date?.Length ?? 0); u++)
                                        {
                                            if (differenza_date[u] != LaData)
                                            {
                                                var data_point_vuoto_no_dati_su_db = new System.Windows.Forms.DataVisualization.Charting.DataPoint()
                                                {
                                                    YValues   = DoubleToDataPointDouble(0D),
                                                    ToolTip   = ToEuroWithDate(0D, differenza_date[u]),
                                                    AxisLabel = differenza_date[u],
                                                    Color     = Color.Green
                                                };

                                                DateUsate.Add(differenza_date[u]);
                                                serie_nuova.Points.Insert(NumCorre, data_point_vuoto_no_dati_su_db);

                                                NumCorre += 1;
                                            }
                                        }
                                    }
                                }

                                serie_nuova.Points.Insert(NumCorre, data_point_attuale);
                            } //fine lettura DB
                        }
                        this.gbGrafico.Text = "Grafico dei movimenti - Saldo = " + cGB.DoubleToMoneyStringValuta(Totale);
                        serie_nuova.Name    = "Saldo = " + cGB.DoubleToMoneyStringValuta(Totale);
                        grafico.Series.Add(serie_nuova);
                    }
                    finally
                    {
                        data_reader.Close();
                    }
                } //using data_reader
            }
            finally
            {
                SettaTitolo();
                this.Enabled = true;

                foreach (var area in grafico.ChartAreas)
                {
                    area.RecalculateAxesScale();
                }
            }
        }