Exemplo n.º 1
0
 public DataTable ExecuteReader(String sql)
 {
     try
     {
         connect.Open();
         transacao           = connect.BeginTransaction(IsolationLevel.ReadCommitted);
         command.Connection  = connect;
         command.Transaction = transacao;
         command.CommandText = sql;
         try
         {
             DataTable dt = new DataTable();
             dt.Load(command.ExecuteReader());
             transacao.Commit();
             return(dt);
         }
         catch (Exception q)
         {
             transacao.Rollback();
             throw new ApplicationException(q.ToString());
         }
     }
     catch
     {
         throw;
     }
     finally
     {
         connect.Close();
     }
 }
Exemplo n.º 2
0
 public void ExecuteNonQuery(String sql)
 {
     try
     {
         connect.Open();
         transacao           = connect.BeginTransaction(IsolationLevel.ReadCommitted);
         command.Connection  = connect;
         command.Transaction = transacao;
         command.CommandText = sql;
         try
         {
             command.ExecuteNonQuery();
             transacao.Commit();
         }
         catch (Exception q)
         {
             transacao.Rollback();
             throw new ApplicationException(q.ToString());
         }
     }
     catch
     {
         throw;
     }
     finally
     {
         connect.Close();
     }
 }
Exemplo n.º 3
0
        public int Excute()
        {
            IDbConnection conn     = DataBaseManage.GetdbConnection();
            int           i_Return = 0;

            try
            {
                conn.Open();
                trans = conn.BeginTransaction();
                Tran();
                trans.Commit();
                return(i_Return);
            }
            catch (Exception ex)
            {
                if (trans != null)
                {
                    trans.Rollback();
                }
                ex.ToString();
                return(i_Return);
            }
            finally
            {
                if (trans != null)
                {
                    trans.Dispose();
                }
                if (conn != null)
                {
                    conn.Close();
                    conn.Dispose();
                }
            }
        }
Exemplo n.º 4
0
 public void SaveAppConfig()
 {
     if (!Database.Instance.IsConfigured)
     {
         configureDatabase();
     }
     System.Data.IDbTransaction trans = Database.Instance.Connection.BeginTransaction();
     try {
         Database.Instance.ExecuteNonQuery("delete from AppConfig", trans);
         foreach (string key in AppConfig.Keys)
         {
             object exists = Database.Instance.ExecuteScalar("select count(*) from AppConfig where ConfigKey=@p0", trans, key);
             int    count;
             if (exists != null && int.TryParse(exists.ToString(), out count) && count > 0)
             {
                 Database.Instance.ExecuteNonQuery("update AppConfig set @p0 = @p1", trans, key, AppConfig[key]);
             }
             else
             {
                 Database.Instance.ExecuteNonQuery("insert into AppConfig(ConfigKey, ConfigValue) Values(@p0, @p1)", trans, key, AppConfig[key]);
             }
         }
         trans.Commit();
     } catch (Exception ex) {
         trans.Rollback();
         throw ex;
     } finally {
         trans.Dispose();
     }
 }
Exemplo n.º 5
0
        public void End(bool reboot)
        {
            Programador.Stop();

            if (this.PV != 0)
            {
                try
                {
                    using (System.Data.IDbTransaction Trans = this.Impresora.Connection.BeginTransaction())
                    {
                        qGen.Update Actualizar = new qGen.Update("pvs", new qGen.Where("id_pv", this.PVenta));
                        Actualizar.ColumnValues.AddWithValue("lsa", null);
                        this.Impresora.Connection.ExecuteNonQuery(Actualizar);
                        Trans.Commit();
                    }
                }
                catch (Exception ex)
                {
                    Log.Error(ex.Message);
                }
            }

            Impresora.Terminar();
            FormEstado.Close();

            if (reboot)
            {
                Lfx.Environment.Shell.Execute(System.Environment.CommandLine, string.Join(" ", System.Environment.GetCommandLineArgs()), System.Diagnostics.ProcessWindowStyle.Minimized, false);
            }
            System.Windows.Forms.Application.Exit();
        }
Exemplo n.º 6
0
        /// <summary>
        /// Rebuild the index from scratch
        /// </summary>
        /// <param name="baseDir">the root from which to list files from</param>
        /// <returns></returns>
        public bool RefreshIndex(String baseDir)
        {
            Console.WriteLine("Refreshing index");

            List <MyFile> fileList = Common.GetFilesRecursive(baseDir);

            DbTransaction transaction = dbConnection.BeginTransaction();

            DbCommand clearCommand = dbConnection.CreateCommand();

            clearCommand.CommandText = "delete from files";
            clearCommand.ExecuteNonQuery();

            foreach (MyFile file in fileList)
            {
                paramPath.Value     = file.name;
                paramType.Value     = file.type.ToString(); // to ensure it is stored as a char/string instead of a numeric value
                paramModtime.Value  = file.modtime;
                paramSize.Value     = file.size;
                paramChecksum.Value = file.checksum;
                commandInsertOrIgnore.ExecuteNonQuery();
            }

            transaction.Commit();

            return(true);
        }
Exemplo n.º 7
0
        public void End(bool reboot)
        {
            Programador.Stop();

            if (this.PV != 0)
            {
                using (System.Data.IDbTransaction Trans = this.Impresora.DataBase.BeginTransaction()) {
                    qGen.Update Actualizar = new qGen.Update("pvs", new qGen.Where("id_pv", this.PVenta));
                    Actualizar.Fields.AddWithValue("lsa", null);
                    this.Impresora.DataBase.Execute(Actualizar);
                    Trans.Commit();
                }
            }

            Impresora.Terminar();
            FormEstado.Close();

            if (reboot)
            {
                string[] ParametrosAPasar = (string[])(this.Arguments);
                ParametrosAPasar[0] = "";
                string Params = string.Join(" ", ParametrosAPasar).Trim();

                Lfx.Environment.Shell.Execute(this.ExecutableName, Params, System.Diagnostics.ProcessWindowStyle.Minimized, false);
            }
            System.Windows.Forms.Application.Exit();
        }
Exemplo n.º 8
0
 public int Excute()
 {
     IDbConnection conn = DataBaseManage.GetdbConnection();
     int i_Return = 0;
     try
     {
         conn.Open();
         trans = conn.BeginTransaction();
         Tran();
         trans.Commit();
         return i_Return;
     }
     catch (Exception ex)
     {
         if (trans != null) trans.Rollback();
         ex.ToString();
         return i_Return;
     }
     finally
     {
         if (trans != null) trans.Dispose();
         if (conn != null)
         {
             conn.Close();
             conn.Dispose();
         }
     }
 }
Exemplo n.º 9
0
 public void Commit()
 {
     m_innerTransaction.Commit();
     foreach (IDbTransactionObserver observer in m_observers)
     {
         observer.AfterCommit();
     }
 }
Exemplo n.º 10
0
        //---------------------------------------------------------------------------------------------------------------------------------------------------------
        public void CommitTransaction()
        {
            if (dbTransaction == null)
            {
                throw (new Exception("BeginTransaction must be called before commit or rollback. No open transactions found"));
            }

            dbTransaction.Commit();
            dbTransaction.Dispose();
            dbTransaction = null;
        }
Exemplo n.º 11
0
        protected void CommitTransaction()
        {
            if (m_oTransaction == null)
            {
                throw (new Exception("BeginTransaction must be called before commit or rollback. No open transactions found"));
            }

            m_oTransaction.Commit();
            m_oTransaction.Dispose();
            m_oTransaction = null;
        }
Exemplo n.º 12
0
        /// <summary>
        /// 执行多条SQL语句,实现数据库事务。
        /// </summary>
        /// <param name="SQLStringList">多条SQL语句</param>
        public void ExecuteSqlTran(Dictionary <string, IDataParameter[]> pList, string strConnect, string dataType)
        {
            using (System.Data.IDbConnection iConn = this.GetConnection())
            {
                //iConn.Open();
                using (System.Data.IDbCommand iCmd = GetCommand())
                {
                    iCmd.Connection = iConn;
                    iConn.Open();
                    using (System.Data.IDbTransaction iDbTran = iConn.BeginTransaction())
                    {
                        iCmd.Transaction = iDbTran;
                        try
                        {
                            foreach (var item in pList)
                            {
                                iCmd.CommandText = item.Key;
                                if (item.Value != null)
                                {
                                    for (int i = 0; i < item.Value.Length; i++)
                                    {
                                        iCmd.Parameters.Add(item.Value[i]);
                                    }
                                }
                                try
                                {
                                    var cnt = iCmd.ExecuteNonQuery();
                                }
                                catch (Exception ex)
                                {
                                    throw;
                                }

                                iCmd.Parameters.Clear();
                            }
                            iDbTran.Commit();
                        }
                        catch (System.Exception E)
                        {
                            iDbTran.Rollback();
                            throw new Exception(E.Message);
                        }
                        finally
                        {
                            if (iConn.State != ConnectionState.Closed)
                            {
                                iConn.Close();
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 13
0
 /// <summary>
 /// Confirma la transaccion activa.
 /// </summary>
 public void TerminarTransaccion()
 {
     try
     {
         mTransaccion.Commit();
     }
     catch (System.Exception Ex)
     {
         throw Ex;
     }
     finally
     {
         mTransaccion   = null;
         EnTranssaccion = false;
     }
 }
Exemplo n.º 14
0
        /**/
        /// <summary>
        /// 执行SQL语句,返回影响的记录数 、用于增删改
        /// </summary>
        /// <param name="SQLString">SQL语句</param>
        /// <returns>影响的记录数</returns>
        public int ExecuteSql(string SqlString)
        {
            using (System.Data.IDbConnection iConn = this.GetConnection())
            {
                using (System.Data.IDbCommand iCmd = GetCommand(SqlString, iConn))
                {
                    iConn.Open();
                    try
                    {
                        int rows = iCmd.ExecuteNonQuery();
                        return(rows);
                    }
                    catch (System.Exception E)
                    {
                        throw new Exception(E.Message);
                    }
                    finally
                    {
                        if (iConn.State != ConnectionState.Closed)
                        {
                            iConn.Close();
                        }
                    }
                }
            }
        }

        /**/
        /// <summary>
        /// 执行多条SQL语句,实现数据库事务。
        /// </summary>
        /// <param name="SQLStringList">多条SQL语句</param>
        public int ExecuteSqlTran(ArrayList SQLStringList)
        {
            int i = 1;

            using (System.Data.IDbConnection iConn = this.GetConnection())
            {
                iConn.Open();
                using (System.Data.IDbCommand iCmd = GetCommand())
                {
                    iCmd.Connection = iConn;
                    using (System.Data.IDbTransaction iDbTran = iConn.BeginTransaction())
                    {
                        iCmd.Transaction = iDbTran;
                        try
                        {
                            for (int n = 0; n < SQLStringList.Count; n++)
                            {
                                string strsql = SQLStringList[n].ToString();
                                if (strsql.Trim().Length > 1)
                                {
                                    iCmd.CommandText = strsql;
                                    iCmd.ExecuteNonQuery();
                                }
                            }
                            iDbTran.Commit();
                        }
                        catch (System.Exception E)
                        {
                            iDbTran.Rollback();
                            i = -1;
                            return(i);

                            throw new Exception(E.Message);
                        }
                        finally
                        {
                            if (iConn.State != ConnectionState.Closed)
                            {
                                iConn.Close();
                            }
                        }
                        return(i);
                    }
                }
            }
        }
Exemplo n.º 15
0
        public DataTable ExecuteReader(String sql, List <Persist> param)
        {
            try
            {
                connect.Open();
                transacao           = connect.BeginTransaction(IsolationLevel.ReadCommitted);
                command.Connection  = connect;
                command.Transaction = transacao;
                command.CommandText = sql;
                command.Parameters.Clear();

                try
                {
                    for (int i = 0; i < param.Count; i++)
                    {
                        if (param[i].ObjValor != null)
                        {
                            DbType tipo = RetornaTipo(param[i].Type.Name.ToUpper());
                            parameters = command.CreateParameter();
                            parameters.ParameterName = "@" + i;
                            parameters.DbType        = tipo;
                            parameters.Value         = param[i].ObjValor == null ? DBNull.Value : param[i].ObjValor;
                            command.Parameters.Add(parameters);
                        }
                    }
                    DataTable dt = new DataTable();
                    dt.Load(command.ExecuteReader());
                    transacao.Commit();
                    return(dt);
                }
                catch (Exception q)
                {
                    transacao.Rollback();
                    throw new ApplicationException(q.ToString());
                }
            }
            catch (Exception q)
            {
                throw new ApplicationException(q.ToString());
            }
            finally
            {
                connect.Close();
            }
        }
Exemplo n.º 16
0
        public void TestMethon3()
        {
            NewCity n = new NewCity()
            {
                CityID   = 1,
                CityName = "保定",
                NewName  = "新北京"
            };

            City c = new City();

            c = n;

            Console.WriteLine(c.CityName);

            //string _connectionString = "Data Source=.;Initial Catalog=SportsDB;Persist Security Info=True;User ID=sa;Password=11111111;Integrated Security=True";
            //System.Data.IDbConnection connection = new System.Data.SqlClient.SqlConnection(_connectionString);

            System.Data.IDbConnection connection = Comm.Helper.DapperHelper.Instance;
            connection.Open();
            System.Data.IDbTransaction transaction = connection.BeginTransaction();

            List <M_User> user = new List <M_User>()
            {
                new M_User()
                {
                    UserName = "******", Pwd = "111111"
                },
                new M_User()
                {
                    UserName = "******", Pwd = "11111111111111111111111111111111"
                },
            };

            try
            {
                connection.Insert <M_User>(user, transaction);
                transaction.Commit();
            }
            catch (Exception ex)
            {
                transaction.Rollback();
            }
        }
Exemplo n.º 17
0
        public Int32 ExecuteNonQuery(String sql, List <Persist> param)
        {
            try
            {
                connect.Open();
                transacao           = connect.BeginTransaction(IsolationLevel.ReadCommitted);
                command.Connection  = connect;
                command.Transaction = transacao;
                command.CommandText = sql;
                int retorno;
                command.Parameters.Clear();

                try
                {
                    for (int i = 0; i < param.Count; i++)
                    {
                        DbType tipo = RetornaTipo(param[i].Type.Name.ToUpper());

                        parameters = command.CreateParameter();
                        parameters.ParameterName = "" + i;
                        parameters.DbType        = tipo;
                        parameters.Value         = param[i].ObjValor == null ? DBNull.Value : param[i].ObjValor;
                        command.Parameters.Add(parameters);
                    }
                    retorno = Convert.ToInt32(command.ExecuteScalar());
                    transacao.Commit();
                    return(retorno);
                }
                catch (Exception q)
                {
                    transacao.Rollback();
                    throw new ApplicationException(q.ToString());
                }
            }
            catch (Exception q)
            {
                throw new ApplicationException(q.ToString());
            }
            finally
            {
                connect.Close();
            }
        }
Exemplo n.º 18
0
        public override Lfx.Types.OperationResult Imprimir()
        {
            // Determino la impresora que le corresponde
            if (this.Impresora == null)
            {
                this.Impresora = this.ObtenerImpresora();
            }

            if (this.Plantilla == null)
            {
                this.Plantilla = this.ObtenerPlantilla();
            }

            // Es una plantilla común... se imprime con Lázaro
            Lfx.Types.OperationResult Res = base.Imprimir();

            System.Data.IDbTransaction Trans = null;
            if (this.Connection.InTransaction == false)
            {
                Trans = this.Connection.BeginTransaction();
            }

            if (Res.Success)
            {
                Lbl.Sys.Config.ActionLog(this.Connection, Lbl.Sys.Log.Acciones.Print, this.Elemento, null);
            }
            else
            {
                Lbl.Sys.Config.ActionLog(this.Connection, Lbl.Sys.Log.Acciones.PrintFail, this.Elemento, Res.Message);
            }

            if (Trans != null)
            {
                Trans.Commit();
                Trans.Dispose();
                Trans = null;
            }

            return(Res);
        }
Exemplo n.º 19
0
        /// <summary>
        /// 执行多条SQL语句,实现数据库事务。
        /// </summary>
        /// <param name="SQLStringList">多条SQL语句</param>
        public void ExecuteSqlTran(List <string> list)
        {
            using (System.Data.IDbConnection iConn = this.GetConnection())
            {
                iConn.Open();
                using (System.Data.IDbCommand iCmd = GetCommand())
                {
                    iCmd.Connection = iConn;
                    using (System.Data.IDbTransaction iDbTran = iConn.BeginTransaction())
                    {
                        iCmd.Transaction = iDbTran;

                        try
                        {
                            for (int n = 0; n < list.Count; n++)
                            {
                                string strsql = list[n].ToString();
                                iCmd.CommandText = strsql;
                                iCmd.ExecuteNonQuery();
                            }
                            iDbTran.Commit();
                        }
                        catch (System.Exception E)
                        {
                            iDbTran.Rollback();
                            throw new Exception(E.Message);
                        }
                        finally
                        {
                            if (iConn.State != ConnectionState.Closed)
                            {
                                iConn.Close();
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 20
0
        private void EntradaComprobanteId_TextChanged(object sender, System.EventArgs e)
        {
            int ComprobanteId = Lfx.Types.Parsing.ParseInt(EntradaComprobanteId.Text);

            if (ComprobanteId > 0)
            {
                EntradaComprobante.Text = Lbl.Comprobantes.Comprobante.TipoYNumeroCompleto(this.Connection, ComprobanteId);
                // Guardo el comprobante en la tarea (sólo si no tenía uno asociado)
                using (System.Data.IDbTransaction Trans = this.Connection.BeginTransaction()) {
                    qGen.Update Actual = new qGen.Update("tickets");
                    Actual.Fields.Add(new Lfx.Data.Field("id_comprob", ComprobanteId));
                    Actual.WhereClause = new qGen.Where();
                    Actual.WhereClause.AddWithValue("id_comprob", 0);
                    Actual.WhereClause.AddWithValue("id_ticket", this.Elemento.Id);
                    this.Connection.Execute(Actual);
                    Trans.Commit();
                }
            }
            else
            {
                EntradaComprobante.Text = "";
            }
        }
Exemplo n.º 21
0
        private void ProcesarReimpresion(string tipo, int pv, int desde, int hasta)
        {
            using (var Conn = Lfx.Workspace.Master.GetNewConnection("Reimpresión de comprobantes") as Lfx.Data.Connection)
                using (System.Data.IDbTransaction Trans = Conn.BeginTransaction()) {
                    int Cantidad = Math.Abs(hasta - desde);
                    Lfx.Types.OperationProgress Progreso = new Lfx.Types.OperationProgress("Reimprimiendo", "Se están reimprimiendo " + Cantidad.ToString() + " comprobantes.");
                    Progreso.Cancelable = true;
                    Progreso.Max        = Cantidad;
                    Progreso.Modal      = true;
                    Progreso.Advertise  = true;
                    Progreso.Begin();

                    string IncluyeTipos = "";

                    switch (tipo)
                    {
                    case "A":
                        IncluyeTipos = "'FA', 'NCA', 'NDA'";
                        break;

                    case "B":
                        IncluyeTipos = "'FB', 'NCB', 'NDB'";
                        break;

                    case "C":
                        IncluyeTipos = "'FC', 'NCC', 'NDC'";
                        break;

                    case "E":
                        IncluyeTipos = "'FE', 'NCE', 'NDE'";
                        break;

                    case "M":
                        IncluyeTipos = "'FM', 'NCM', 'NDM'";
                        break;

                    default:
                        IncluyeTipos = "'" + EntradaTipo.TextKey + "'";
                        break;
                    }

                    int Paso = desde < hasta ? 1 : -1;
                    for (int Numero = desde; Numero != hasta; Numero += Paso)
                    {
                        int IdFactura = Connection.FieldInt("SELECT id_comprob FROM comprob WHERE impresa=1 AND anulada=0 AND compra=0 AND tipo_fac IN (" + IncluyeTipos + ") AND pv=" + pv.ToString() + " AND numero=" + Numero.ToString());

                        if (IdFactura == 0)
                        {
                            // No existe, supongo que está anulado, lo salteo
                        }
                        else
                        {
                            Lbl.Comprobantes.ComprobanteFacturable Fac = new Lbl.Comprobantes.ComprobanteFacturable(Conn, IdFactura);
                            Progreso.ChangeStatus("Imprimiendo " + Fac.ToString());

                            var Controlador = new Lazaro.Base.Controller.ComprobanteController(Trans);
                            Controlador.Imprimir(Fac, null);
                        }
                        Progreso.Advance(1);

                        if (Progreso.Cancelar)
                        {
                            break;
                        }
                    }

                    Progreso.End();
                    Trans.Commit();
                }
        }
Exemplo n.º 22
0
        public static string[] Build(Arguments.IBuildArguments buildArguments, Logging.ILog log = null)
        {
            if (log == null)
            {
                log = new Logging.NoLogging();
            }
            if (string.IsNullOrEmpty(buildArguments.ScriptPath))
            {
                buildArguments.ScriptPath = System.Environment.CurrentDirectory;
            }

            if (string.IsNullOrEmpty(buildArguments.DbProviderFactory))
            {
                buildArguments.DbProviderFactory = "System.Data.SqlClient";
            }

            if (string.IsNullOrEmpty(buildArguments.ScriptProcessor))
            {
                buildArguments.ScriptProcessor = typeof(SqlScriptRunner.ScriptProcessing.SqlServerScriptProcessor).FullName;
            }

            if (string.IsNullOrEmpty(buildArguments.VersionParser))
            {
                buildArguments.VersionParser = typeof(SqlScriptRunner.Versioning.VersionDateParser).AssemblyQualifiedName;
            }


            Type t = Type.GetType(buildArguments.VersionParser);

            SqlScriptRunner.Versioning.IParseVersions versionParser =
                (Activator.CreateInstance(t) as
                 SqlScriptRunner.Versioning.IParseVersions);


            SqlScriptRunner.Versioning.Version minVersion = null;
            SqlScriptRunner.Versioning.Version maxVersion = null;

            if (string.IsNullOrEmpty(buildArguments.MinimumVersion))
            {
                minVersion = SqlScriptRunner.Versioning.Version.Min;
            }
            else
            {
                minVersion = versionParser.Parse(buildArguments.MinimumVersion);
            }

            if (string.IsNullOrEmpty(buildArguments.MaximumVersion))
            {
                maxVersion = SqlScriptRunner.Versioning.Version.Max;
            }
            else
            {
                maxVersion = versionParser.Parse(buildArguments.MaximumVersion);
            }
            log.Info("--------------------------------");
            log.Info(string.Format("Min:{0}, Max:{1}, ScriptPath:{2}, Transactional:{4}, DryRun:{5}\r\nConnectionString:{3}", minVersion, maxVersion, buildArguments.ScriptPath, buildArguments.ConnectionString, buildArguments.Transactional, buildArguments.DryRun));
            log.Info("--------------------------------");
            DbConnection connection = null;

            if (!buildArguments.DryRun)
            {
                //make sure we can connect to the database
                DbProviderFactory factory = DbProviderFactories.GetFactory(buildArguments.DbProviderFactory);
                connection = factory.CreateConnection();
                if (connection == null)
                {
                    throw new ArgumentException(
                              "Could not create a connection to the database, via the Provider Factory:" +
                              buildArguments.DbProviderFactory);
                }
                else
                {
                    connection.ConnectionString = buildArguments.ConnectionString;
                    connection.Open();
                }
            }

            SortedList <string, string> Files = SqlScriptRunner.ScriptRunner.ResolveScriptsFromPathAndVersion(buildArguments.ScriptPath, buildArguments.ScriptPattern, buildArguments.Recurse, System.Environment.CurrentDirectory, minVersion, maxVersion, versionParser);

            log.Info(string.Format("Resolved:{0} files.", Files.Count));

            foreach (var file in Files.Keys)
            {
                log.Info(file);
                if (!buildArguments.DryRun)
                {
                    try
                    {
                        log.Info("Executing");
                        string script = System.IO.File.ReadAllText(Files[file]);
                        SqlScriptRunner.ScriptRunner runner = new ScriptRunner(script, null);
                        if (buildArguments.Transactional)
                        {
                            if (connection.State == ConnectionState.Closed)
                            {
                                connection.Open();
                            }
                            System.Data.IDbTransaction transaction = null;
                            if (buildArguments.Transactional)
                            {
                                transaction = connection.BeginTransaction();
                            }
                            try
                            {
                                runner.Execute(connection, transaction);
                                if (buildArguments.Transactional)
                                {
                                    transaction.Commit();
                                }
                                log.Info("Success:" + file);
                            }
                            catch (Exception e)
                            {
                                log.Info("Fail [In Trx:" + buildArguments.Transactional + "]:" + file);
                                log.Fatal(e);
                                if (buildArguments.Transactional)
                                {
                                    transaction.Rollback();
                                }
                                throw;
                            }
                        }
                        else
                        {
                            runner.Execute(connection);
                        }
                    }
                    catch (Exception e)
                    {
                        if (buildArguments.BreakOnError)
                        {
                            throw;
                        }
                        else
                        {
                            log.Debug("There was an error with a script, since BreakOnError is false, we will continue.File:" + file, e);
                        }
                    }
                }
            }
            log.Info("Done Executing");
            return((from f in Files select f.Value).ToArray());
        }
        public HeadCountDTO Post(HeadCountSave p)
        {
            using (System.Data.IDbTransaction dbTrans = Db.BeginTransaction())
            {
                try
                {
                    HeadCount HeadCountItem = p.Headcount;
                    //If inserting
                    if (HeadCountItem.Id == 0)
                    {
                        HeadCountItem.CreatedBy   = HeadCountItem.UpdatedBy = WindowsHelper.WindowsUserName;
                        HeadCountItem.CreatedDate = HeadCountItem.UpdatedDate = DateTime.Now;
                        HeadCountItem.Id          = Convert.ToInt32(Db.GetLastInsertId());
                    }
                    // Else updating
                    else
                    {
                        HeadCountItem.UpdatedBy   = WindowsHelper.WindowsUserName;
                        HeadCountItem.UpdatedDate = DateTime.Now;
                    }

                    // Save and Commit all changes to the database
                    Db.Save <HeadCount>(HeadCountItem);


                    if (HeadCountItem.Id == 0)
                    {
                        HeadCountItem.Id = Convert.ToInt32(Db.GetLastInsertId());
                    }

                    List <UploadFileDetail> UploadFileDetailsList = p.UploadFileDetailList;
                    Db.Delete <UploadFileDetail>(x => x.HeadCountID == HeadCountItem.Id);



                    foreach (UploadFileDetail item in UploadFileDetailsList)
                    {
                        Db.Insert(new UploadFileDetail
                        {
                            HeadCountID = HeadCountItem.Id,
                            ContentType = item.ContentType,
                            DisplayName = item.DisplayName,
                            Extension   = item.Extension,
                            FileData    = item.FileData,
                            FileSize    = item.FileSize,
                            Name_File   = item.Name_File,
                            UploadType  = item.UploadType,
                            CreatedBy   = WindowsHelper.WindowsUserName,
                            UpdatedBy   = WindowsHelper.WindowsUserName,
                            CreatedDate = DateTime.Now,
                            UpdatedDate = DateTime.Now
                        });
                    }

                    dbTrans.Commit();

                    HeadCountList r = new HeadCountList();
                    r.Id = HeadCountItem.Id;

                    return(Get(r));
                }
                catch (Exception ex)
                {
                    dbTrans.Rollback();
                    ErrorLogger.InsertError("Could not update HeadCount", ex);
                    throw new Exception("Could not update HeadCount", ex);
                }
            }
        }
Exemplo n.º 24
0
        private bool GuardarConfig()
        {
            if (EntradaEmpresaEmail.Text.Length <= 5 || EntradaEmpresaEmail.Text.IndexOf('@') <= 0 || EntradaEmpresaEmail.Text.IndexOf('.') <= 0)
            {
                Lui.Forms.MessageBox.Show("Por favor escriba una dirección de correo electrónico (e-mail) válida.", "Validación");
                return(true);
            }


            if (EntradaEmpresaNombre.Text.Length <= 5 || EntradaEmpresaNombre.Text == "Nombre de la empresa")
            {
                Lui.Forms.MessageBox.Show("Por favor escriba el nombre de la empresa.", "Validación");
                return(true);
            }


            Lbl.Entidades.Pais NuevoPais = EntradaPais.Elemento as Lbl.Entidades.Pais;
            if (NuevoPais == null || NuevoPais.Existe == false)
            {
                Lui.Forms.MessageBox.Show("Por favor seleccione el país.", "Validación");
                return(true);
            }

            if (NuevoPais.Id != IdPaisOriginal)
            {
                Lbl.Sys.Config.CambiarPais(NuevoPais);
            }

            int Sucursal = EntradaSucursal.ValueInt;

            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Stock.CodigoPredet", EntradaArticulosCodigoPredet.TextKey, 0);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Stock.Multideposito", EntradaStockMultideposito.TextKey, 0);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Stock.Decimales", EntradaStockDecimales.TextKey, 0);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Stock.DepositoPredet", EntradaStockDepositoPredet.Text, 0);;
            if (EntradaStockDepositoPredetSuc.ValueInt > 0)
            {
                Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Stock.DepositoPredet", EntradaStockDepositoPredetSuc.Text, Sucursal);
            }
            else
            {
                Lfx.Workspace.Master.CurrentConfig.DeleteGlobalSetting("Sistema.Stock.DepositoPredet", Sucursal);
            }

            Lbl.Sys.Config.Empresa.Nombre      = EntradaEmpresaNombre.Text;
            Lbl.Sys.Config.Empresa.RazonSocial = EntradaEmpresaRazonSocial.Text;
            if (EntradaEmpresaClaveTributaria.Text.Length > 0)
            {
                Lbl.Sys.Config.Empresa.ClaveTributaria = new Lbl.Personas.Claves.Cuit(EntradaEmpresaClaveTributaria.Text);
            }
            else
            {
                Lbl.Sys.Config.Empresa.ClaveTributaria = null;
            }
            Lbl.Sys.Config.Empresa.SituacionTributaria = EntradaEmpresaSituacion.ValueInt;
            Lbl.Sys.Config.Empresa.Email = EntradaEmpresaEmail.Text;
            Lbl.Sys.Config.Empresa.Id    = EntradaEmpresaId.ValueInt;

            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Backup.Tipo", EntradaBackup.TextKey, Lfx.Environment.SystemInformation.MachineName);
            if (EntradaModoPantalla.TextKey == "*")
            {
                Lfx.Workspace.Master.CurrentConfig.DeleteGlobalSetting("Sistema.Apariencia.ModoPantalla", Lfx.Environment.SystemInformation.MachineName);
            }
            else
            {
                Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Apariencia.ModoPantalla", EntradaModoPantalla.TextKey, Lfx.Environment.SystemInformation.MachineName);
            }
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Datos.Aislacion", EntradaAislacion.TextKey);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Actualizaciones.Nivel", EntradaActualizaciones.TextKey);

            //Guardo información sobre los PV
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.PV", EntradaPV.Text, Sucursal);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.ABC.PV", EntradaPVABC.Text, Sucursal);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.NC.PV", EntradaPVNC.Text, Sucursal);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.ND.PV", EntradaPVND.Text, Sucursal);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.R.PV", EntradaPVR.Text, Sucursal);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.RC.PV", EntradaPVRC.Text, System.Environment.MachineName);

            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.ClientePredet", EntradaClientePredet.Text);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.FormaPagoPredet", EntradaFormaPagoPredet.Text);

            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Documentos.CambiaPrecioItemFactura", EntradaCambiaPrecioComprob.Value ? 1 : 0);

            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Cuentas.LimiteCreditoPredet", EntradaLimiteCredito.ValueDecimal);

            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Provincia", EntradaProvincia.ValueInt);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Localidad", EntradaLocalidad.ValueInt);

            EntradaMonedaUnidadMonetariaMinima.ValueDecimal = Lbl.Sys.Config.Moneda.UnidadMonetariaMinima;

            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Moneda.Decimales", EntradaMonedaDecimalesUnitarios.ValueInt);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Moneda.DecimalesCosto", EntradaMonedaDecimalesCosto.ValueInt);
            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Moneda.DecimalesFinal", EntradaMonedaDecimalesFinal.ValueInt);
            Lbl.Sys.Config.Moneda.Decimales      = EntradaMonedaDecimalesUnitarios.ValueInt;
            Lbl.Sys.Config.Moneda.DecimalesCosto = EntradaMonedaDecimalesCosto.ValueInt;
            Lbl.Sys.Config.Moneda.DecimalesFinal = EntradaMonedaDecimalesFinal.ValueInt;

            Lfx.Workspace.Master.CurrentConfig.Empresa.SucursalActual = EntradaSucursal.ValueInt;


            Lfx.Workspace.Master.CurrentConfig.WriteGlobalSetting("Sistema.Configurado", "1", 0);

            if (this.PrimeraVez)
            {
                // Hago cambios referentes al país donde está configurado el sistema

                Lbl.Entidades.Pais Pais = EntradaPais.Elemento as Lbl.Entidades.Pais;
                if (Pais != null)
                {
                    Lbl.Sys.Config.CambiarPais(Pais);
                }

                using (System.Data.IDbTransaction Trans = this.Connection.BeginTransaction()) {
                    // Cambio la sucursal 1 y el cliente consumidor final a la localidad proporcionada
                    Lbl.Entidades.Localidad Loc = EntradaLocalidad.Elemento as Lbl.Entidades.Localidad;
                    if (Loc != null)
                    {
                        Lbl.Entidades.Sucursal Suc1 = new Lbl.Entidades.Sucursal(this.Connection, 1);
                        Suc1.Localidad = Loc;
                        Suc1.Guardar();

                        Lbl.Personas.Persona ConsFinal = new Lbl.Personas.Persona(this.Connection, 999);
                        ConsFinal.Localidad = Loc;
                        ConsFinal.Guardar();
                    }
                    Trans.Commit();
                }

                Lbl.Sys.Config.Cargar();

                this.PrimeraVez = false;
            }

            return(false);
        }