Пример #1
0
        Easy_DataAccess ottieniConnessioneNuovoEsercizio(DataAccess Conn, int newEsercizio)
        {
            if (!DatiValidi(Conn, newEsercizio))
            {
                return(null);
            }

            DateTime newDate = new DateTime(newEsercizio, 12, 31);

            if (!CambioDataConsentita(Conn, newDate))
            {
                MessageBox.Show("L'utente non ha diritto ad agire nell'esercizio " + newEsercizio, "Errore");
                return(null);
            }
            Easy_DataAccess newConn = (Easy_DataAccess)Conn.Duplicate();

            newConn.SetSys("esercizio", newEsercizio);
            newConn.SetSys("datacontabile", newDate);


            newConn.RecalcUserEnvironment(Conn.GetSys("idflowchart"), Conn.GetSys("ndetail"));
            newConn.ReadAllGroupOperations();

            return(newConn);
        }
Пример #2
0
        private void btnOk_Click(object sender, System.EventArgs e)
        {
            Easy_DataAccess DepConn = (Easy_DataAccess)MetaData.GetConnection(this);
            string          old     = txtOld.Text;
            string          user    = DepConn.GetSys("user").ToString();

            DataAccess Try = new DataAccess("temp",
                                            DepConn.GetSys("server").ToString(), DepConn.GetSys("database").ToString(),
                                            user, old, DateTime.Now.Year, DateTime.Now);

            Try.Open();
            if (Try.OpenError)
            {
                MessageBox.Show(this, "La vecchia password inserita non è corretta!", "Errore");
                DialogResult = DialogResult.None;
                return;
            }

            PwdConfirm   Confirm = new PwdConfirm("s");
            DialogResult Res     = Confirm.ShowDialog(this);

            if (Res != DialogResult.OK)
            {
                DialogResult = DialogResult.None;
                return;
            }
            string new1 = txtNew1.Text;
            string new2 = Confirm.txtPwd.Text;

            if (new1 != new2)
            {
                MessageBox.Show(this, "La password inserita come conferma era diversa!", "Errore");
                DialogResult = DialogResult.None;
                return;
            }
            byte [] oldalfa = Easy_DataAccess.getAlfaFromPassword(old);
            byte [] newalfa = Easy_DataAccess.getAlfaFromPassword(new1);
            if (DepConn.changeUserPassword(oldalfa, newalfa))
            {
                object PWDOLD = (old == "") ? DBNull.Value : (object)old;
                object PWDNEW = (new1 == "") ? DBNull.Value : (object)new1;
                string err;
                string sql = "sp_password " +
                             QueryCreator.quotedstrvalue(PWDOLD, true) + "," +
                             QueryCreator.quotedstrvalue(PWDNEW, true);
                object O = Try.DO_SYS_CMD(sql, out err);
                Try.Destroy();
                if (err != null)
                {
                    QueryCreator.ShowError(this, "Errore nell'impostazione della password", err);
                    DepConn.changeUserPassword(oldalfa, newalfa);                   //Annulla l'azione del precedente!!
                    DialogResult = DialogResult.None;
                    return;
                }
                DepConn.SetSys("password", new1);
                if (new1 == Easy_DataAccess.INITIAL_PASSWORD)
                {
                    DepConn.SetSys("initial_password_set", "S");
                }
                else
                {
                    DepConn.SetSys("initial_password_set", "N");
                }
                MessageBox.Show(this, "Password reimpostata con successo");
            }
            else
            {
                MessageBox.Show(this, "Non è stato possibile cambiare la password");
            }
        }
Пример #3
0
        private void btnOk_Click(object sender, System.EventArgs e)
        {
            Easy_DataAccess DepConn = (Easy_DataAccess)MetaData.GetConnection(this);
            string          old     = txtOld.Text;
            string          dbuser  = DepConn.GetSys("userdb").ToString();

            DataAccess Try = new DataAccess("temp",
                                            DepConn.GetSys("server").ToString(), DepConn.GetSys("database").ToString(),
                                            dbuser, old, DateTime.Now.Year, DateTime.Now);

            Try.Open();
            if (Try.OpenError)
            {
                MessageBox.Show(this, "La vecchia password inserita non è corretta!", "Errore");
                DialogResult = DialogResult.None;
                return;
            }

            PwdConfirm   Confirm = new PwdConfirm(1);
            DialogResult Res     = Confirm.ShowDialog(this);

            if (Res != DialogResult.OK)
            {
                DialogResult = DialogResult.None;
                return;
            }
            string new1 = txtNew1.Text.ToUpper();
            string new2 = Confirm.txtPwd.Text.ToUpper();

            if (new1 != new2)
            {
                MessageBox.Show(this, "La password inserita come conferma era diversa!", "Errore");
                DialogResult = DialogResult.None;
                return;
            }
            if (new1.Length == 0)
            {
                MessageBox.Show(this, "La password deve essere composta da almeno 1 carattere");
                this.DialogResult = DialogResult.None;
                return;
            }
            byte [] oldpwd = DataAccess.CryptString(old);
            byte [] newpwd = DataAccess.CryptString(new1);
            if (DepConn.changeDepartmentPassword(oldpwd, newpwd))
            {
                object PWDOLD = (old == "") ? DBNull.Value : (object)old;
                object PWDNEW = (new1 == "") ? DBNull.Value : (object)new1;
                string err;
                string sql = "sp_password " +
                             QueryCreator.quotedstrvalue(PWDOLD, true) + "," +
                             QueryCreator.quotedstrvalue(PWDNEW, true);
                object O = Try.DO_SYS_CMD(sql, out err);
                Try.Destroy();
                if (err != null)
                {
                    QueryCreator.ShowError(this, "Errore nell'impostazione della password", err);
                    DepConn.changeDepartmentPassword(oldpwd, newpwd);                   //Annulla l'azione del precedente!!
                    DialogResult = DialogResult.None;
                    return;
                }
                DepConn.SetSys("passworddb", new1);
                MessageBox.Show(this, "Password reimpostata con successo");
            }
            else
            {
                MessageBox.Show(this, "Non è stato possibile cambiare la password");
            }
        }