コード例 #1
0
        private void SelezionaDistintaFrm_Load(object sender, EventArgs e)
        {
            try
            {
                Text     = string.Format("Cerca distinte base per l'articolo {0}", _articolo.ToString());
                distinte = DistintaBase.EstraiListaDistinteBase(_articolo.IdArticolo);
                dgvDistinte.AutoGenerateColumns = false;

                if (distinte.Count == 1)
                {
                    DistintaSelezionata = distinte[0];
                    DialogResult        = DialogResult.OK;
                }
                if (distinte.Count == 0)
                {
                    return;
                }

                BindingList <DistintaBase> bl = new BindingList <DistintaBase>(distinte);
                BindingSource bs = new BindingSource(bl, null);
                dgvDistinte.DataSource = bs;
                dgvDistinte.Update();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "ERRORE", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
コード例 #2
0
        private void ddlTipoDistinta_SelectedIndexChanged(object sender, EventArgs e)
        {
            TipoDistinta        tipoDistinta = (TipoDistinta)ddlTipoDistinta.SelectedItem;
            List <DistintaBase> distinte     = DistintaBase.EstraiListaDistinteBase(Articolo.IdArticolo);

            distinte         = distinte.Where(x => x.TipoDistinta.IdTipoDiBa == tipoDistinta.IdTipoDiBa).ToList();
            txtVersione.Text = (distinte.Count() + 1).ToString();
        }
コード例 #3
0
 private void toolCancellaDiBa_Click(object sender, EventArgs e)
 {
     if (_distinta == null)
     {
         return;
     }
     if (MessageBox.Show("Sei sicuro di voler cancellare la distinta ?", "ATTENZIONE", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes)
     {
         _distinta.Cancella(_utenteConnesso);
         _distinta = null;
         popolaCampi();
         Aggiorna();
     }
 }
        private void btnSalvaDiBa_Click(object sender, EventArgs e)
        {
            if (_distinta == null)
            {
                MessageBox.Show("Nessuna distinta BC attiva. Non c'è niente da salvare.", "ATTENZIONE", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            NuovoArticoloFrm nForm = new NuovoArticoloFrm();

            nForm.Utente = _utenteConnesso;
            nForm.ShowDialog();
            int _idArticolo = nForm.IDArticolo;

            if (_idArticolo == ElementiVuoti.Articolo)
            {
                return;
            }

            try
            {
                Cursor.Current = Cursors.WaitCursor;
                Articolo articolo = Articolo.EstraiArticolo(_idArticolo);

                if (articolo != null)
                {
                    NuovaDistintaFrm form = new NuovaDistintaFrm(articolo, _utenteConnesso);
                    form.ShowDialog();
                    int idDIba = form.IDDIBA_OUT;
                    if (idDIba == ElementiVuoti.DistintaBase)
                    {
                        MessageBox.Show("Errore in fase di creazione della distinta", "ERRORE", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }

                    DistintaBase distintaBase = DistintaBase.EstraiDistintaBase(idDIba);
                    distintaBase.CreaDaDistintaBC(_distinta, idDIba, _utenteConnesso);
                    distintaBase.Salva(_utenteConnesso);
                }
            }
            catch (Exception ex)
            {
                MostraEccezione(ex, "Errore in salva DiBa");
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }
        }
コード例 #5
0
        private void toolCreaDiBaProduzione_Click(object sender, EventArgs e)
        {
            if (_distinta.TipoDistinta.TipoDiba == TipoDistinta.TipoProduzione)
            {
                MessageBox.Show("La distinta è già una distinta di produzione", "ATTENZIONE", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }

            try
            {
                Cursor.Current = Cursors.WaitCursor;
                int idDiba     = ElementiVuoti.DistintaBase;
                int IdTipoDiBa = TipoDistinta.EstraiListaTipoDistinta(true).Where(x => x.TipoDiba == TipoDistinta.TipoProduzione).Select(x => x.IdTipoDiBa).FirstOrDefault();

                List <DistintaBase> distinte = DistintaBase.EstraiListaDistinteBase(_articolo.IdArticolo);

                distinte = distinte.Where(x => x.TipoDistinta.IdTipoDiBa == IdTipoDiBa).ToList();
                int versione = distinte.Count() + 1;

                DistintaBase.CreaDistinta(_articolo.IdArticolo, IdTipoDiBa, versione, _distinta.Descrizione, false, _utenteConnesso, out idDiba);

                if (idDiba == ElementiVuoti.DistintaBase)
                {
                    MessageBox.Show("ERRORE NELLA CREAZIONE DELLA DISTINTA", "ATTENZIONE", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                DistintaBase nuovaDistinta = DistintaBase.EstraiDistintaBase(idDiba);
                _distinta.Copia(nuovaDistinta, _utenteConnesso);
                nuovaDistinta.ConvertiAnagraficaInProduzione();
                _distinta = nuovaDistinta;
                popolaCampi();
                Aggiorna();
                MessageBox.Show("Operazione completata con successo", "INFORMAZIONE", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception ex)
            {
                MostraEccezione(ex, "Errore in crea diba produzione");
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }
        }
コード例 #6
0
        private void btnNuovaDistinta_Click(object sender, EventArgs e)
        {
            try
            {
                //               _newrow = false;

                if (_articolo == null)
                {
                    MessageBox.Show("Nessun articolo selezioanto", "ATTENZIONE", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }
                NuovaDistintaFrm form = new NuovaDistintaFrm(_articolo, _utenteConnesso);
                form.ShowDialog();
                int idDIba = form.IDDIBA_OUT;
                if (idDIba == ElementiVuoti.DistintaBase)
                {
                    MessageBox.Show("Errore in fase di creazione della distinta", "ERRORE", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                _distinta = DistintaBase.EstraiDistintaBase(idDIba);
                if (_distinta == null)
                {
                    MessageBox.Show("Errore distinta base nulla", "ERRORE", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                Cursor.Current = Cursors.WaitCursor;
                popolaCampi();

                Aggiorna();
            }
            catch (Exception ex)
            {
                MostraEccezione(ex, "Errore in verifica cicli");
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }
        }
コード例 #7
0
        private void btnCercaDiBa_Click(object sender, EventArgs e)
        {
            //          _newrow = false;
            _distinta        = null;
            indiceComponenti = 0;
            indiceFaseCiclo  = 0;

            this.Text = string.Empty;
            if (_articolo == null)
            {
                return;
            }

            SelezionaDistintaFrm form = new SelezionaDistintaFrm(_articolo);

            form.ShowDialog();
            try
            {
                Cursor.Current = Cursors.WaitCursor;
                _distinta      = form.DistintaSelezionata;

                if (_distinta == null)
                {
                    MessageBox.Show("Nessuna distinta selezionata", "ATTENZIONE", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }

                popolaCampi();
                Aggiorna();
            }
            catch (Exception ex)
            {
                MostraEccezione(ex, "Errore in verifica cicli");
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }
        }
コード例 #8
0
        private void btnSalvaDiba_Click(object sender, EventArgs e)
        {
            try
            {
                //          _newrow = false;

                Cursor.Current = Cursors.WaitCursor;

                correggiDescrizioniFasiCiclo();
                _distinta.Descrizione = (txtDescrizioneDiba.Text.Length > 50) ? txtDescrizioneDiba.Text.Substring(0, 50) : txtDescrizioneDiba.Text;
                if (_distinta == null)
                {
                    return;
                }
                if (_distinta.VerificaPerSalvataggio())
                {
                    _distinta.Salva(_utenteConnesso);
                    _distinta = DistintaBase.EstraiDistintaBase(_distinta.IdDiba);

                    Aggiorna();
                }
                else
                {
                    MessageBox.Show("Ci sono errori nelle righe la distinte NON è stata salvata", "ATTENZIONE", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                PopolaGrigliaComponenti();
            }
            catch (Exception ex)
            {
                MostraEccezione(ex, "Errore in verifica cicli");
            }
            finally
            {
                Cursor.Current = Cursors.Default;
            }
        }
コード例 #9
0
        private void btnCreaDistinta_Click(object sender, EventArgs e)
        {
            txtDescrizione.Text = txtDescrizione.Text.ToUpper();
            StringBuilder sb    = new StringBuilder();
            bool          esito = false;

            if (string.IsNullOrEmpty(txtDescrizione.Text))
            {
                esito = true;
                sb.AppendLine("La descrizione è obbligatoria");
            }
            if (ddlTipoDistinta.SelectedIndex == -1)
            {
                esito = true;
                sb.AppendLine("Indicare il tipo di distinta");
            }

            if (esito)
            {
                lblMessage.Text = sb.ToString();
                return;
            }
            TipoDistinta tipoDistinta = (TipoDistinta)ddlTipoDistinta.SelectedItem;
            int          versione     = 1;

            if (!Int32.TryParse(txtVersione.Text, out versione))
            {
                versione = 1;
            }

            int idDiba = ElementiVuoti.DistintaBase;

            DistintaBase.CreaDistinta(Articolo.IdArticolo, tipoDistinta.IdTipoDiBa, versione, txtDescrizione.Text, false, Utente, out idDiba);
            IDDIBA_OUT   = idDiba;
            DialogResult = DialogResult.OK;
        }
コード例 #10
0
 private void dgvDistinte_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
 {
     DistintaSelezionata = distinte[e.RowIndex];
     DialogResult        = DialogResult.OK;
 }