Example #1
0
        public static string SalvaControllo(int idControllo, string codice, string descrizione, string tipo, double minimo, double massimo, double Default, ElementoLista[] lista, string account)
        {
            SchedeProcessoDS ds = new SchedeProcessoDS();

            using (SchedeProcessoBusiness bScheda = new SchedeProcessoBusiness())
            {
                bScheda.GetControllo(ds, idControllo);

                SchedeProcessoDS.SPCONTROLLIRow riga = ds.SPCONTROLLI.Where(x => x.IDSPCONTROLLO == idControllo).FirstOrDefault();

                if (riga != null)
                {
                    riga.CODICE         = codice.ToUpper();
                    riga.DESCRIZIONE    = descrizione.ToUpper();
                    riga.TIPO           = tipo.ToUpper();
                    riga.MINIMO         = minimo;
                    riga.MASSIMO        = massimo;
                    riga.DEFAULT        = Default;
                    riga.DATAMODIFICA   = DateTime.Now;
                    riga.UTENTEMODIFICA = account;
                }
                else
                {
                    riga                = ds.SPCONTROLLI.NewSPCONTROLLIRow();
                    riga.CODICE         = codice.ToUpper();
                    riga.DESCRIZIONE    = descrizione.ToUpper();
                    riga.MINIMO         = minimo;
                    riga.TIPO           = tipo.ToUpper();
                    riga.MASSIMO        = massimo;
                    riga.DEFAULT        = Default;
                    riga.CANCELLATO     = false;
                    riga.DATAMODIFICA   = DateTime.Now;
                    riga.UTENTEMODIFICA = account.ToUpper();
                    ds.SPCONTROLLI.AddSPCONTROLLIRow(riga);
                }

                if (tipo == TipoSPControllo.LISTA)
                {
                    foreach (ElementoLista elemento in lista)
                    {
                        int sequenza = 1;
                        if (!string.IsNullOrEmpty(elemento.Sequenza))
                        {
                            Int32.TryParse(elemento.Sequenza, out sequenza);
                        }
                        SPElementoLista.SalvaElemento(elemento.IDElemento, riga.IDSPCONTROLLO, elemento.Codice, elemento.Descrizione, sequenza, account, ds);
                    }
                }

                bScheda.UpdateTableSPControlli(ds);
                bScheda.UpdateTable(ds.SPELEMENTILISTA.TableName, ds);
            }
            return("Controllo creato correttamente");
        }
        public static string SalvaScheda(int idScheda, int IdSPMaster, string anagrafica, string codice, string descrizione, string areaProduzione, string task, List <ElementoScheda> controlli, List <ElementoScheda> obbligatori, string account)
        {
            SchedeProcessoDS ds = new SchedeProcessoDS();

            using (SchedeProcessoBusiness bScheda = new SchedeProcessoBusiness())
            {
                bScheda.GetSPScheda(idScheda, ds);
                //  bScheda.FillValoriSchede(ds, idScheda, true);
                codice = string.Empty;

                SchedeProcessoDS.SPSCHEDERow schedaPadre = ds.SPSCHEDE.Where(x => x.IDSPSCHEDA == idScheda).FirstOrDefault();
                int versione = 1;
                if (schedaPadre != null)
                {
                    versione          = schedaPadre.VERSIONE + 1;
                    schedaPadre.STATO = StatoSPScheda.STORICO;
                    codice            = schedaPadre.CODICE;
                }

                SchedeProcessoDS.SPSCHEDERow riga = ds.SPSCHEDE.NewSPSCHEDERow();
                riga.CODICE         = codice.ToUpper();
                riga.DESCRIZIONE    = descrizione.ToUpper();
                riga.IDSPMASTER     = IdSPMaster;
                riga.AREAPRODUZIONE = areaProduzione.ToUpper();
                riga.TASK           = task.ToUpper();
                riga.ANAGRAFICA     = anagrafica.ToUpper();
                riga.VERSIONE       = versione;
                riga.STATO          = StatoSPScheda.ATTIVA;
                riga.CANCELLATO     = false;
                riga.DATAMODIFICA   = DateTime.Now;
                riga.UTENTEMODIFICA = account.ToUpper();
                ds.SPSCHEDE.AddSPSCHEDERow(riga);

                //   int sequenza = 0;
                foreach (ElementoScheda controllo in obbligatori)
                {
                    if (!string.IsNullOrEmpty(controllo.Filename))
                    {
                        controllo.Valore = (controllo.Filename.Length > 30) ? controllo.Filename.Substring(0, 30) : controllo.Filename;
                    }
                    SPValoreScheda.SalvaValoreScheda(controllo.IDValore, controllo.IDElemento, riga.IDSPSCHEDA, controllo.Valore, controllo.Filedata, account, true, ds);
                }
                foreach (ElementoScheda controllo in controlli)
                {
                    if (!string.IsNullOrEmpty(controllo.Filename))
                    {
                        controllo.Valore = (controllo.Filename.Length > 30) ? controllo.Filename.Substring(0, 30) : controllo.Filename;
                    }
                    SPValoreScheda.SalvaValoreScheda(controllo.IDValore, controllo.IDElemento, riga.IDSPSCHEDA, controllo.Valore, controllo.Filedata, account, false, ds);
                }

                bScheda.UpdateTableSPScheda(ds);
                bScheda.UpdateTable(ds.SPVALORISCHEDE.TableName, ds);
                ds.AcceptChanges();
                if (string.IsNullOrEmpty(codice))
                {
                    riga.CODICE = string.Format("SP{0}", riga.IDSPSCHEDA.ToString().PadLeft(8, '0'));
                    bScheda.UpdateTableSPScheda(ds);
                }
                string messaggio = string.Format("Scheda creata correttamente. CODICE: {0}", riga.CODICE);
                return(messaggio);
            }
        }
Example #3
0
        public static string SalvaMaster(int idMaster, string codice, string descrizione, string areaProduzione, string task, ElementoMaster[] elementiLista, string account)
        {
            SchedeProcessoDS ds = new SchedeProcessoDS();

            using (SchedeProcessoBusiness bScheda = new SchedeProcessoBusiness())
            {
                bScheda.GetSPMaster(ds, idMaster);
                bScheda.FillElementi(ds, idMaster, true);

                SchedeProcessoDS.SPMASTERSRow riga = ds.SPMASTERS.Where(x => x.IDSPMASTER == idMaster).FirstOrDefault();

                if (string.IsNullOrEmpty(codice))
                {
                    int maxIDSPMasyer = bScheda.GetMaxIDSPMaster() + 1;
                    codice = "MA" + maxIDSPMasyer.ToString().PadLeft(ds.SPMASTERS.CODICEColumn.MaxLength - 2, '0');
                }

                if (riga != null)
                {
                    riga.CODICE         = codice.ToUpper();
                    riga.DESCRIZIONE    = descrizione.ToUpper();
                    riga.AREAPRODUZIONE = areaProduzione.ToUpper();
                    riga.TASK           = task.ToUpper();
                    riga.DATAMODIFICA   = DateTime.Now;
                    riga.UTENTEMODIFICA = account;
                }
                else
                {
                    riga                = ds.SPMASTERS.NewSPMASTERSRow();
                    riga.CODICE         = codice.ToUpper();
                    riga.DESCRIZIONE    = descrizione.ToUpper();
                    riga.AREAPRODUZIONE = areaProduzione.ToUpper();
                    riga.TASK           = task.ToUpper();
                    riga.CANCELLATO     = false;
                    riga.DATAMODIFICA   = DateTime.Now;
                    riga.UTENTEMODIFICA = account.ToUpper();
                    ds.SPMASTERS.AddSPMASTERSRow(riga);
                }


                if (idMaster > 0)
                {
                    List <int> listaIdElementi = elementiLista.Where(x => x.IDElemento > 0).Select(x => x.IDElemento).Distinct().ToList();
                    foreach (SchedeProcessoDS.SPELEMENTIRow elemento in ds.SPELEMENTI)
                    {
                        if (!listaIdElementi.Contains(elemento.IDSPELEMENTO))
                        {
                            elemento.CANCELLATO     = true;
                            elemento.DATAMODIFICA   = DateTime.Now;
                            elemento.UTENTEMODIFICA = account;
                        }
                    }
                }

                List <int> idControlliObbligatori = SPElemento.EstraiListaSPElementiObbligatori(1, true).Select(x => x.IdSPControllo).Distinct().ToList();
                int        sequenza = 0;
                foreach (ElementoMaster elemento in elementiLista)
                {
                    if (!idControlliObbligatori.Contains(elemento.IDControllo))
                    {
                        sequenza++;
                        SPElemento.SalvaElemento(elemento.IDElemento, elemento.IDControllo, riga.IDSPMASTER, elemento.Testo, elemento.Tipo, elemento.Obbligatorio, sequenza, account, ds);
                    }
                }
                bScheda.UpdateTableSPMaster(ds);
                bScheda.UpdateTable(ds.SPELEMENTI.TableName, ds);
            }
            return("Master creato correttamente");
        }