Esempio n. 1
0
        protected void btndel_Click(object sender, EventArgs e)
        {
            if (((SystemDBIsConnected() == false) || Session["DBUserConn"] == null))
            {
                return;
            }

            DataAccess  sys      = GetSystemDB();
            QueryHelper QHS      = sys.GetQueryHelper();
            DataSet     DS       = new vistaForm_virtualuser();
            DataTable   T        = DS.Tables["virtualuser"];
            string      login    = Request.Form["txtlogin"].ToString();
            string      cognome  = Request.Form["txtCognome"].ToString();
            string      nome     = Request.Form["txtNome"].ToString();
            string      cf       = Request.Form["txtCf"].ToString();
            string      coddip   = Request.Form["txtcoddip"].ToString();
            string      custuser = Request.Form["txtcustuser"].ToString();
            string      userkind = Request.Form["userkind"].ToString();



            string filter = QHS.AppAnd(QHS.CmpEq("userkind", userkind), QHS.CmpEq("codicedipartimento", coddip),
                                       QHS.CmpEq("username", login));

            sys.RUN_SELECT_INTO_TABLE(T, null, filter, null, false);

            if (T == null || T.Rows.Count == 0)
            {
                lblError.Text = "Record inesistente";
                return;
            }

            DataRow DR = T.Rows[0];

            DR.Delete();

            PostData PD = new PostData();

            PD.InitClass(DS, sys);

            ProcedureMessageCollection MCOLL = PD.DO_POST_SERVICE();

            if (!MCOLL.CanIgnore)
            {
                lblError.Text = "Delle regole di sicurezza hanno impedito l'update del db di sistema!!";
                return;
            }
            PD.DO_POST_SERVICE();
            lblError.Text = "<p style=\"color: blue;\">Utente '" + login + "' Eliminato.</p>";
            EmptyForm(false);
        }
Esempio n. 2
0
        public static void Log(System.Web.UI.Page P, string Azione)
        {
            DataSet DS = new DataSet("log");

            DS.CaseSensitive = false;
            DataAccess Conn = GetVars.GetSystemDataAccess(P);

            if (Conn == null)
            {
                return;
            }
            Conn.Open();
            if (Conn.openError)
            {
                return;
            }
            DataTable T = Conn.CreateTableByName("logweb", "*");

            DS.Tables.Add(T);
            DataRow R = T.NewRow();

            R["IDLog"]              = Guid.NewGuid().ToString();
            R["IP"]                 = P.Request.UserHostAddress;
            R["Azione"]             = Azione;
            R["Data"]               = DateTime.Now;
            R["CodiceDipartimento"] = NoNull(GetVars.GetCodDip(P));
            R["Dipartimento"]       = NoNull(GetVars.GetDip(P));
            R["DipServer"]          = NoNull(Conn.GetSys("server"));
            R["DipDatabase"]        = NoNull(Conn.GetSys("database"));
            R["NomeReport"]         = NoNull(P.Session["ReportName"]);
            T.Rows.Add(R);
            string tipoUtente = NoNull(P.Session["TipoUtente"]).ToString();

            if (tipoUtente.ToLower() == "fornitore")
            {
                R["Utente"]      = NoNull(P.Session["Fornitore"]);
                R["LoginUtente"] = NoNull(P.Session["LoginFornitore"]);
            }
            if (tipoUtente.ToLower() == "responsabile")
            {
                R["Utente"]      = NoNull(P.Session["Responsabile"]);
                R["LoginUtente"] = NoNull(P.Session["LoginResponsabile"]);
            }
            if (tipoUtente.ToLower() == "utente")
            {
                R["Utente"]      = NoNull(P.Session["Utente"]);
                R["LoginUtente"] = NoNull(P.Session["Utente"]);
            }
            if (tipoUtente.ToLower() == "utente ldap")
            {
                R["Utente"]      = NoNull(P.Session["Utente"]);
                R["LoginUtente"] = NoNull(P.Session["Utente"]);
            }


            PostData PD = new PostData();

            PD.initClass(DS, Conn);
            ProcedureMessageCollection MCOLL = PD.DO_POST_SERVICE();

            if (MCOLL.CanIgnore && MCOLL.Count > 0)
            {
                PD.DO_POST_SERVICE();
            }
            Conn.Close();
        }
Esempio n. 3
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            string     error = "";
            DataAccess sys   = GetVars.GetSystemDataAccess(this, out error);

            if (sys == null)
            {
                labMsg.Text = "Servizio Web non installato correttamente.";
                if (error != null)
                {
                    labMsg.Text += error;
                }
                return;
            }
            if (Session["pwd_system"] != null)
            {
                LabelPasswordCfg.Visible = false;
            }
            // Put user code to initialize the page here
            if (IsPostBack)
            {
                string pwdsys = Request.Form["txtPwdSystem"].ToString();
                if (Session["pwd_system"] == null)
                {
                    if (pwdsys != "web report fc-hires")
                    {
                        labMsg.Text = "Password di sistema non accettata.";
                        return;
                    }
                    Session["pwd_system"] = "1";
                }
                string          dip    = txtDip.Text;
                string          codice = txtCodice.Text;
                string          ip     = txtIP.Text;
                string          db     = txtDB.Text;
                string          user   = txtUser.Text;
                string          pwd    = Request.Form["txtPWD"].ToString();
                Easy_DataAccess Conn   = new Easy_DataAccess(
                    "mydsn", ip, db, user, pwd, user, pwd, DateTime.Now.Year, DateTime.Now);
                if (Conn == null)
                {
                    labMsg.Text = "Non è stato possibile collegarsi al server.";
                    return;
                }
                Conn.Open();
                if (Conn.OpenError)
                {
                    labMsg.Text = "Non è stato possibile collegarsi al server.";
                    return;
                }
                Conn.Close();
                DataSet     DS        = new Dipartimenti();
                QueryHelper QHS       = sys.GetQueryHelper();
                string      searchdip = QHS.CmpEq("CodiceDipartimento", codice);
                if (sys.RUN_SELECT_COUNT("CodiciDipartimenti", searchdip, true) > 0)
                {
                    labMsg.Text = "Codice dipartimento già esistente, sarà aggiornato.";
                    DataTable T = DS.Tables[0];
                    sys.RUN_SELECT_INTO_TABLE(T, null, searchdip, null, false);
                    DataRow R = T.Rows[0];
                    R["CodiceDipartimento"] = codice;
                    R["dipartimento"]       = dip;
                    R["IPserver"]           = GetVars.CryptPassword(ip);
                    R["NomeDB"]             = GetVars.CryptPassword(db);
                    R["UserDB"]             = GetVars.CryptPassword(user);
                    R["PassDB"]             = GetVars.CryptPassword(pwd);
                }
                else
                {
                    DataTable T = DS.Tables[0];
                    DataRow   R = T.NewRow();
                    R["CodiceDipartimento"] = codice;
                    R["dipartimento"]       = dip;
                    R["IPserver"]           = GetVars.CryptPassword(ip);
                    R["NomeDB"]             = GetVars.CryptPassword(db);
                    R["UserDB"]             = GetVars.CryptPassword(user);
                    R["PassDB"]             = GetVars.CryptPassword(pwd);
                    T.Rows.Add(R);
                }
                PostData CP = new PostData();
                CP.InitClass(DS, sys);
                ProcedureMessageCollection MCOLL = CP.DO_POST_SERVICE();
                if (!MCOLL.CanIgnore)
                {
                    labMsg.Text = "Delle regole di sicurezza impediscono l'update del db di sistema!!";
                    return;
                }

                if (MCOLL.Count > 0)
                {
                    MCOLL = CP.DO_POST_SERVICE();
                    if (!MCOLL.CanIgnore)
                    {
                        labMsg.Text = "Delle regole di sicurezza hanno impedito l'update del db di sistema!!";
                        return;
                    }
                }

                labMsg.Text = "DB DI SISTEMA Aggiornato correttamente.";
            }
        }
Esempio n. 4
0
        void ScaricaPrenotazione(DataAccess Conn, string idbooking)
        {
            vistaform_storeunload_magazzino DS = new vistaform_storeunload_magazzino();
            CQueryHelper QHC = new CQueryHelper();

            QueryHelper QHS = Conn.GetQueryHelper();

            //WebLog.Log(this, "Visualizza Login_Servizi");
            object Obooking_on_invoice = Conn.DO_READ_VALUE("config", QHS.CmpEq("ayear", Conn.GetSys("esercizio")), "booking_on_invoice");

            if (Obooking_on_invoice == null || Obooking_on_invoice == DBNull.Value || Obooking_on_invoice.ToString() == "")
            {
                Obooking_on_invoice = "N";
            }
            Obooking_on_invoice = Obooking_on_invoice.ToString().ToUpper();
            bool booking_on_invoice = (Obooking_on_invoice.ToString() == "S");



            DataTable BookingToUnload = Conn.RUN_SELECT("booktotalview", "*", null,
                                                        QHS.AppAnd(QHS.CmpGt("allocated", 0), QHS.CmpEq("idbooking", idbooking)), null, true);

            DataTable TStockView = Conn.CreateTableByName("stockview", "*");

            TStockView.PrimaryKey = new DataColumn[] { TStockView.Columns["idstock"] };

            Meta_EasyDispatcher Disp = new Meta_EasyDispatcher(Conn);

            MetaData MetaStoreUnload = Disp.Get("storeunload");

            MetaStoreUnload.SetDefaults(DS.storeunload);
            MetaData MetaStoreUnloadDetail = Disp.Get("storeunloaddetail");

            MetaStoreUnloadDetail.SetDefaults(DS.storeunloaddetail);


            DataRow[] Selected = BookingToUnload.Select();
            if (Selected.Length == 0)
            {
                //niente da scaricare
                lblMessaggio.Text = "Non c'è nulla da scaricare";
                txtCodice.Text    = "";
                return;
            }

            DataRow RStoreUnload = MetaStoreUnload.Get_New_Row(null, DS.storeunload);

            RStoreUnload["description"] = "Scarico prenotazione da magazzino";
            RStoreUnload["idstore"]     = Selected[0]["idstore"];
            RStoreUnload["adate"]       = DateTime.Now;

            Hashtable idlistToStock = new Hashtable();//l'elemento della hashtable è un list<int>

            //Prende una riga di prenotazione
            foreach (DataRow R in Selected)    // riga di prenotazione
            {
                string filterbooking       = QHS.CmpEq("idbooking", R["idbooking"]);
                string filterbookingdetail = QHS.AppAnd(filterbooking,
                                                        QHS.CmpEq("idlist", R["idlist"]));

                DataTable B     = Conn.RUN_SELECT("bookingdetail", "*", null, filterbookingdetail, null, false);
                DataTable Bmain = Conn.RUN_SELECT("booking", "*", null, filterbooking, null, false);

                DataRow BookingDetail = null;


                string filterstock = QHS.AppAnd(QHS.CmpEq("idstore", R["idstore"]),
                                                QHS.CmpEq("idlist", R["idlist"]),
                                                QHS.CmpGt("residual", 0));
                string filterstockds = QHC.AppAnd(QHC.CmpEq("idstore", R["idstore"]),
                                                  QHC.CmpEq("idlist", R["idlist"]),
                                                  QHC.CmpGt("residual", 0));


                //legge in TStockView i cespiti di stock disponibili ad essere scaricati

                if (booking_on_invoice)
                {
                    filterstock   = QHS.AppAnd(filterstock, QHS.CmpEq("idstock", R["idstock"]));
                    filterstockds = QHC.AppAnd(filterstockds, QHC.CmpEq("idstock", R["idstock"]));
                }

                if (TStockView.Select(filterstockds).Length == 0)
                {
                    Conn.RUN_SELECT_INTO_TABLE(TStockView, "expiry asc, idstock asc", filterstock, null, true);
                }

                ///SViewRows = cespiti disponibili (da stockview) allo scarico
                DataRow[] SViewRows = TStockView.Select(filterstockds);
                if (SViewRows.Length == 0)
                {
                    continue;
                }

                DataRow RS;
                decimal tounload = CfgFn.GetNoNullDecimal(R["allocated"]);

                int i = 0;
                //Cerca di scaricare prendendo le righe in SViewRows
                while (i < SViewRows.Length && tounload > 0)
                {
                    DataRow RStock     = SViewRows[i];
                    decimal unloadable = CfgFn.GetNoNullDecimal(RStock["residual"]);
                    if (unloadable > tounload)
                    {
                        unloadable = tounload;
                    }
                    //devo scaricare unloadable
                    string fbooking = filterbooking;


                    //devo scaricare unloadable
                    fbooking = QHC.AppAnd(fbooking, QHC.CmpEq("idstock", RStock["idstock"]));

                    //cerca una riga in storeunloaddetail di pari idstock e idbooking (idstock è sempre noto a questo punto)
                    if (DS.storeunloaddetail.Select(fbooking).Length > 0)
                    {
                        RS           = DS.storeunloaddetail.Select(fbooking)[0];
                        RS["number"] = CfgFn.GetNoNullDecimal(RS["number"]) + unloadable;
                    }
                    else
                    {
                        RS              = MetaStoreUnloadDetail.Get_New_Row(DS.storeunload.Rows[0], DS.storeunloaddetail);
                        RS["number"]    = unloadable;
                        RS["idbooking"] = R["idbooking"];
                        // Determino idstock
                        // io ho una serie di di idlist e idstore
                        // in base ai dettagli selezionati mi servono
                        // per accedere alla vista delle giacenze di stock e creo
                        // una tabella che deve essere filtrata per idlist
                        // idstore e giacenza > 0
                        RS["idstock"] = RStock["idstock"];//T.Rows[0]["idstock"];
                        if (B.Rows.Count > 0)
                        {
                            BookingDetail = B.Rows[0];
                            RS["idsor1"]  = BookingDetail["idsor1"];
                            RS["idsor2"]  = BookingDetail["idsor2"];
                            RS["idsor3"]  = BookingDetail["idsor3"];
                            RS["idman"]   = Bmain.Rows[0]["idman"];
                        }
                    }
                    tounload          -= unloadable;
                    RStock["residual"] = CfgFn.GetNoNullDecimal(RStock["residual"]) - unloadable;
                    i++;
                }
            }
            StoreUnloadSendMail SUSM = new StoreUnloadSendMail(Conn);

            SUSM.PrepareMailToSend(DS);

            Easy_PostData EP = new Easy_PostData();

            EP.InitClass(DS, Conn);
            ProcedureMessageCollection PC = EP.DO_POST_SERVICE();

            if (PC.Count > 0)
            {
                string err = "";
                foreach (EasyProcedureMessage PM in PC)
                {
                    err += PM.AuditID + "/" + PM.TableName + "/" + PM.Operation + "/" + PM.EnforcementNumber + "(" + PM.LongMess + ") ";
                }
                string data = "";
                foreach (DataRow r in DS.storeunloaddetail.Rows)
                {
                    data += "[idstock=" + r["idstock"].ToString() + ",number=" + r["number"].ToString() + ",idbooking=" + r["idbooking"].ToString() +
                            ",idman=" + r["idman"].ToString() + "] ";
                }
                lblMessaggio.Text = "Errore in fase di salvataggio dati: " + err + " Data: " + data;
                GetVars.ClearUserConn(this);
            }
            else
            {
                EP.DO_POST_SERVICE();
                DataRow Curr = DS.storeunload.Rows[0];
                StampaReport(Conn, CfgFn.GetNoNullInt32(Curr["idstoreunload"]));
                SUSM.SendMail();
                lblMessaggio.Text = "Scarico effettuato.";
                txtCodice.Text    = "";
            }
        }
Esempio n. 5
0
        protected void btnadd_Click(object sender, EventArgs e)
        {
            lblError.Text = "";


            if (Request.Form["txtcognome"].ToString() == "")
            {
                lblError.Text = "Inserire il cognome<br/>";
                return;;
            }

            if (Request.Form["txtnome"].ToString() == "")
            {
                lblError.Text = "Inserire il nome<br/>";
                return;
            }
            if (Request.Form["txtcustuser"] == "")
            {
                lblError.Text = "Inserire l'utente applicativo<br/>";
                return;
            }

            if (Request.Form["txtlogin"].ToString() == "")
            {
                lblError.Text = "Inserire la login<br/>";
                return;
            }

            if (Request.Form["txtEmail"].ToString() == "")
            {
                lblError.Text = "Inserire l'email<br/>";
                return;
            }

            DataAccess sys = GetSystemDB();

            DataSet     DS         = new vistaForm_virtualuser();
            string      login      = Request.Form["txtlogin"].ToString();
            string      cognome    = Request.Form["txtCognome"].ToString();
            string      nome       = Request.Form["txtNome"].ToString();
            string      cf         = Request.Form["txtCf"].ToString();
            string      coddip     = Request.Form["txtcoddip"].ToString();
            string      custuser   = Request.Form["txtcustuser"].ToString();
            string      email      = Request.Form["txtEmail"].ToString();
            string      typeofuser = Request.Form["userkind"].ToString();
            QueryHelper QHS        = sys.GetQueryHelper();

            if (custuser == "")
            {
                lblError.Text = "Utente Applicativo non specificato";
                return;
            }

            if (!CustomUserExists(custuser))
            {
                lblError.Text = "L'Utente Applicativo specificato è inesistente";
                return;
            }

            string filter = QHS.AppAnd(QHS.CmpEq("userkind", typeofuser), QHS.CmpEq("codicedipartimento", coddip),
                                       QHS.CmpEq("username", login));
            int numberofrecs = sys.RUN_SELECT_COUNT("virtualuser", filter, false);

            string    query     = "SELECT MAX(idvirtualuser) as maxvalue from virtualuser";
            DataTable RES       = sys.SQLRunner(query);
            int       newkeynum = CfgFn.GetNoNullInt32(RES.Rows[0]["maxvalue"]) + 1;

            DataTable T = DS.Tables["virtualuser"];
            DataRow   DR;

            if (numberofrecs == 0)
            {
                DR = T.NewRow();
                DR["idvirtualuser"] = newkeynum;
            }
            else
            {
                sys.RUN_SELECT_INTO_TABLE(T, null, filter, null, false);
                DR = T.Rows[0];
            }
            DR["username"]           = login;
            DR["codicedipartimento"] = coddip;
            DR["userkind"]           = typeofuser;
            DR["sys_user"]           = custuser;
            DR["surname"]            = cognome;
            DR["forename"]           = nome;
            DR["cf"]    = cf;
            DR["email"] = email;
            if (numberofrecs == 0)
            {
                T.Rows.Add(DR);
            }

            PostData PD = new PostData();

            PD.InitClass(DS, sys);
            ProcedureMessageCollection MCOLL = PD.DO_POST_SERVICE();

            if (!MCOLL.CanIgnore)
            {
                lblError.Text = "Delle regole di sicurezza impediscono l'update del db di sistema!!";
                return;
            }
            MCOLL = PD.DO_POST_SERVICE();
            if (!MCOLL.CanIgnore)
            {
                lblError.Text = "Delle regole di sicurezza hanno impedito l'update del db di sistema!!";
                return;
            }
            if (numberofrecs == 0)
            {
                lblError.Text = "<p style=\"color: blue;text-align: center;\">Utente aggiunto.</p>";
            }
            else
            {
                lblError.Text = "<p style=\"color: blue;text-align: center;\">Utente aggiornato.</p>";
            }
        }
Esempio n. 6
0
        protected void brnAdd_Click(object sender, EventArgs e)
        {
            if (Session["SysPasswordOk"] == null)
            {
                lblmessages.Text =
                    "Prima di procedere alla configurazione, inserire la Password di abilitazione alla configurazione.";
                return;
            }
            string     error = "";
            DataAccess sys   = GetVars.GetSystemDataAccess(this, out error);

            if (sys == null)
            {
                lblmessages.Text = "Servizio Web non installato correttamente.";
                if (error != null)
                {
                    lblmessages.Text += error;
                }
                return;
            }

            string          dip    = txtDip.Text;
            string          codice = txtCodice.Text;
            string          ip     = txtIP.Text;
            string          db     = txtDB.Text;
            string          user   = txtUser.Text;
            string          pwd    = txtPWD.Text;
            Easy_DataAccess Conn   = new Easy_DataAccess(
                "mydsn", ip, db, user, pwd, user, pwd, DateTime.Now.Year, DateTime.Now);

            if (Conn == null)
            {
                lblmessages.Text = "Non è stato possibile collegarsi al server.";
                return;
            }
            Conn.Open();
            if (Conn.OpenError)
            {
                lblmessages.Text = "Non è stato possibile collegarsi al server.";
                return;
            }
            Conn.Close();
            DataSet DS = new Dipartimenti();

            if (sys.RUN_SELECT_COUNT("CodiciDipartimenti",
                                     "(CodiceDipartimento=" +
                                     QueryCreator.quotedstrvalue(codice, true) + ")", true) > 0)
            {
                lblmessages.Text = "Codice dipartimento già esistente.";
                return;
            }
            DataTable T = DS.Tables[0];
            DataRow   R = T.NewRow();

            R["CodiceDipartimento"] = codice;
            R["dipartimento"]       = dip;
            R["IPserver"]           = GetVars.CryptPassword(ip);
            R["NomeDB"]             = GetVars.CryptPassword(db);
            R["UserDB"]             = GetVars.CryptPassword(user);
            R["PassDB"]             = GetVars.CryptPassword(pwd);
            T.Rows.Add(R);
            PostData CP = new PostData();

            CP.InitClass(DS, sys);

            ProcedureMessageCollection MCOLL = CP.DO_POST_SERVICE();

            if (!MCOLL.CanIgnore)
            {
                lblmessages.Text = "Delle regole di sicurezza hanno impedito l'update del db di sistema!!";
                return;
            }
            else
            {
                if (MCOLL.Count > 0)
                {
                    CP.DO_POST_SERVICE();
                }
            }


            lblmessages.Text = "DB DI SISTEMA Aggiornato correttamente.";
        }