Пример #1
0
 // el metodo llena una fila con una cuenta
 private void llenarFila(CuentaPartida cuenta, CuentaPartida cuentaPartida)
 {
     if (cuenta.TipoSaldo == "Deudor")
     {
         if (cuentaPartida.Haber <= 0)
         {
             tableBalanceDeComprobacion.Rows.Add(cuentaPartida.IdPartida, cuentaPartida.Codigo, cuentaPartida.Nombre, redondear(cuentaPartida.Debe), redondear(cuentaPartida.Haber));
         }
         else if (cuentaPartida.Haber > 0)
         {
             tableBalanceDeComprobacion.Rows.Add(cuentaPartida.IdPartida, cuentaPartida.Codigo, cuentaPartida.Nombre, redondear(0 - cuentaPartida.Haber), "0.00");
         }
     }
     else if (cuenta.TipoSaldo == "Acreedor")
     {
         if (cuentaPartida.Debe <= 0)
         {
             tableBalanceDeComprobacion.Rows.Add(cuentaPartida.IdPartida, cuentaPartida.Codigo, cuentaPartida.Nombre, redondear(cuentaPartida.Debe), redondear(cuentaPartida.Haber));
         }
         else if (cuentaPartida.Debe > 0)
         {
             tableBalanceDeComprobacion.Rows.Add(cuentaPartida.IdPartida, cuentaPartida.Codigo, cuentaPartida.Nombre, "0.00", redondear(0 - cuentaPartida.Debe));
         }
     }
 }
Пример #2
0
        private void llenarCuentas(CuentaPartida cuenta)
        {
            listaCuentaPartidas = balanceComprobacionController.getListCuentasPartidas(cuenta.Codigo, idLibroDiario);

            foreach (CuentaPartida cuentaPartida in listaCuentaPartidas)
            {
                if (tableBalanceDeComprobacion.Rows.Count == 1)
                {
                    llenarFila(cuenta, cuentaPartida);
                }
                else if (tableBalanceDeComprobacion.Rows.Count > 1)
                {
                    for (int i = 0; i < tableBalanceDeComprobacion.Rows.Count; i++)
                    {
                        if (tableBalanceDeComprobacion.Rows[i].Cells["ColumnCodigo"].Value.ToString() == cuentaPartida.Codigo)
                        {
                            if (cuenta.TipoSaldo == "Deudor")
                            {
                                double debe = Convert.ToDouble(tableBalanceDeComprobacion.Rows[i].Cells["ColumnDeudor"].Value);

                                if (cuentaPartida.Haber <= 0)
                                {
                                    tableBalanceDeComprobacion.Rows[i].Cells["ColumnDeudor"].Value = redondear(debe += cuentaPartida.Debe);
                                }
                                else if (cuentaPartida.Haber > 0)
                                {
                                    tableBalanceDeComprobacion.Rows[i].Cells["ColumnDeudor"].Value = redondear(debe += 0 - cuentaPartida.Haber);
                                }
                            }
                            else if (cuenta.TipoSaldo == "Acreedor")
                            {
                                double haber = Convert.ToDouble(tableBalanceDeComprobacion.Rows[i].Cells["ColumnAcreedor"].Value);

                                if (cuentaPartida.Debe <= 0)
                                {
                                    tableBalanceDeComprobacion.Rows[i].Cells["ColumnAcreedor"].Value = redondear(haber += cuentaPartida.Haber);
                                }
                                else if (cuentaPartida.Debe > 0)
                                {
                                    tableBalanceDeComprobacion.Rows[i].Cells["ColumnAcreedor"].Value = redondear(haber += 0 - cuentaPartida.Debe);
                                }
                            }

                            exit = true;
                            break;
                        }
                        else
                        {
                            exit = false;
                        }
                    }

                    if (!exit)
                    {
                        llenarFila(cuenta, cuentaPartida);
                    }
                }
            }
        }
Пример #3
0
        public List <Partida> getListPartida(string codigo, int idLibroDiario)
        {
            try
            {
                conn = Conexion.Conn;

                conn.Open();

                using (SQLiteCommand command = new SQLiteCommand())
                {
                    string sql = $"SELECT {TABLE_CUENTA}.{CODIGO}, {TABLE_PARTIDA}.{FECHA}, {TABLE_PARTIDA}.{CONCEPTO}, {TABLE_CUENTA_PARTIDA}.{DEBE}, {TABLE_CUENTA_PARTIDA}.{HABER} FROM {TABLE_CUENTA_PARTIDA} ";
                    sql += $"INNER JOIN {TABLE_CUENTA} ON {TABLE_CUENTA_PARTIDA}.{ID_CUENTA} = {TABLE_CUENTA}.{ID_CUENTA} ";
                    sql += $"INNER JOIN {TABLE_PARTIDA} ON {TABLE_CUENTA_PARTIDA}.{ID_PARTIDA} = {TABLE_PARTIDA}.{ID_PARTIDA} ";
                    sql += $"WHERE {TABLE_PARTIDA}.{ID_LIBRO_DIARIO} = @idLibroDiario AND {TABLE_CUENTA}.{CODIGO} LIKE @codigo || '%'";

                    command.CommandText = sql;
                    command.Connection  = Conexion.Conn;
                    command.Parameters.AddWithValue("@codigo", codigo);
                    command.Parameters.AddWithValue("@idLibroDiario", idLibroDiario);

                    using (SQLiteDataReader result = command.ExecuteReader())
                    {
                        if (listaPartidas.Count > 0)
                        {
                            listaPartidas.Clear();
                        }

                        if (result.HasRows)
                        {
                            while (result.Read())
                            {
                                Partida partidaAux = new Partida();
                                partidaAux.ListaCuentasPartida = new List <CuentaPartida>();
                                partidaAux.Fecha   = result[FECHA].ToString();
                                partidaAux.Detalle = result[CONCEPTO].ToString();

                                cuentaPartida = new CuentaPartida();

                                cuentaPartida.Codigo = result[CODIGO].ToString();
                                cuentaPartida.Debe   = Convert.ToDouble(result[DEBE].ToString());
                                cuentaPartida.Haber  = Convert.ToDouble(result[HABER].ToString());

                                partidaAux.ListaCuentasPartida.Add(cuentaPartida);
                                listaPartidas.Add(partidaAux);
                            }
                        }
                    }
                }

                conn.Close();
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            return(listaPartidas);
        }
Пример #4
0
        public List <CuentaPartida> getListSaldos(int idLibroDiario, string numeroLibro)
        {
            try
            {
                conn = Conexion.Conn;

                conn.Open();

                using (SQLiteCommand command = new SQLiteCommand())
                {
                    Console.WriteLine(numeroLibro);
                    string sql = $"SELECT {TABLE_CUENTA}.{NOMBRE_CUENTA}, {TABLE_CUENTA_PARTIDA}.{DEBE}, {TABLE_CUENTA_PARTIDA}.{HABER}, {TABLE_CUENTA}.{CODIGO}, {TABLE_CUENTA}.{TIPO_SALDO} ";
                    sql += $"FROM {TABLE_CUENTA_PARTIDA} INNER JOIN {TABLE_CUENTA} ON {TABLE_CUENTA_PARTIDA}.{ID_CUENTA} = {TABLE_CUENTA}.{ID_CUENTA} ";
                    sql += $"INNER JOIN {TABLE_PARTIDA} ON {TABLE_CUENTA_PARTIDA}.{ID_PARTIDA} = {TABLE_PARTIDA}.{ID_PARTIDA} ";
                    sql += $"WHERE {TABLE_PARTIDA}.{ID_LIBRO_DIARIO} = @idLibroDiario AND {TABLE_CUENTA}.{CODIGO} LIKE @numeroLibro || '%'";

                    command.CommandText = sql;
                    command.Connection  = Conexion.Conn;
                    command.Parameters.AddWithValue("@idLibroDiario", idLibroDiario);
                    command.Parameters.AddWithValue("@numeroLibro", numeroLibro);

                    using (SQLiteDataReader result = command.ExecuteReader())
                    {
                        if (listaSaldos.Count > 0)
                        {
                            listaSaldos.Clear();
                        }

                        if (result.HasRows)
                        {
                            while (result.Read())
                            {
                                CuentaPartida cuenta = new CuentaPartida();
                                cuenta.Codigo    = result[CODIGO].ToString();
                                cuenta.Nombre    = result[NOMBRE_CUENTA].ToString();
                                cuenta.Debe      = Convert.ToDouble(result[DEBE]);
                                cuenta.Haber     = Convert.ToDouble(result[HABER]);
                                cuenta.TipoSaldo = result[TIPO_SALDO].ToString();

                                listaSaldos.Add(cuenta);
                            }
                        }
                    }
                }
                conn.Close();
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            return(listaSaldos);
        }
Пример #5
0
        public List <CuentaPartida> getList(int n_partida, int idLibro)
        {
            try
            {
                conn = Conexion.Conn;

                conn.Open();

                using (SQLiteCommand command = new SQLiteCommand())
                {
                    int idPartida = obtenerIdPartida(n_partida, idLibro);

                    string sql = $"SELECT {TABLE_CUENTA}.{CODIGO}, {TABLE_CUENTA}.{NOMBRE_CUENTA}, {TABLE_CUENTA_PARTIDA}.{DEBE}, {TABLE_CUENTA_PARTIDA}.{HABER} FROM {TABLE_CUENTA} ";
                    sql += $"INNER JOIN {TABLE_CUENTA_PARTIDA} ON {TABLE_CUENTA}.{ID_CUENTA} = {TABLE_CUENTA_PARTIDA}.{ID_CUENTA} WHERE {ID_PARTIDA} = @idPartida";
                    command.CommandText = sql;
                    command.Connection  = Conexion.Conn;
                    command.Parameters.AddWithValue("@idPartida", idPartida);

                    using (SQLiteDataReader result = command.ExecuteReader())
                    {
                        if (result.HasRows)
                        {
                            if (lista.Count > 0)
                            {
                                lista.Clear();
                            }

                            while (result.Read())
                            {
                                CuentaPartida cuentaPartida = new CuentaPartida();

                                cuentaPartida.Codigo = result[CODIGO].ToString();
                                cuentaPartida.Nombre = result[NOMBRE_CUENTA].ToString();
                                cuentaPartida.Debe   = Convert.ToDouble(result[DEBE].ToString());
                                cuentaPartida.Haber  = Convert.ToDouble(result[HABER].ToString());

                                lista.Add(cuentaPartida);
                            }
                        }
                    }
                }

                conn.Close();
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            return(lista);
        }
Пример #6
0
        private void insertarCuentaPartida(CuentaPartida cuentaPartida)
        {
            using (SQLiteCommand command = new SQLiteCommand())
            {
                string sql = $"INSERT INTO  {TABLE_CUENTA_PARTIDA}({ID_CUENTA_PARTIDA}, {ID_CUENTA}, {ID_PARTIDA}, {DEBE}, {HABER}) ";
                sql += "VALUES (NULL, @idCuenta, @idPartida, @debe, @haber);";

                command.CommandText = sql;
                command.Connection  = Conexion.Conn;
                command.Parameters.AddWithValue("@idCuenta", cuentaPartida.IdCuenta);
                command.Parameters.AddWithValue("@idPartida", cuentaPartida.IdPartida);
                command.Parameters.AddWithValue("@debe", cuentaPartida.Debe);
                command.Parameters.AddWithValue("@haber", cuentaPartida.Haber);
                command.ExecuteNonQuery();
            }
        }
Пример #7
0
        // el metodo llena las cuentas de la partida
        private void LlenarCuentasPartida(ref Partida partida)
        {
            partida.ListaCuentasPartida = new List <CuentaPartida>();

            for (int i = 1; i < tablePartidas.Rows.Count; i++)
            {
                CuentaPartida cuentaPartida = new CuentaPartida();

                cuentaPartida.Codigo = tablePartidas.Rows[i].Cells[1].Value.ToString();
                cuentaPartida.Nombre = tablePartidas.Rows[i].Cells[2].Value.ToString();
                cuentaPartida.Debe   = Convert.ToDouble(tablePartidas.Rows[i].Cells[3].Value);
                cuentaPartida.Haber  = Convert.ToDouble(tablePartidas.Rows[i].Cells[4].Value);

                partida.ListaCuentasPartida.Add(cuentaPartida);
            }
        }
Пример #8
0
        public List <CuentaPartida> getListCuentas()
        {
            try
            {
                conn = Conexion.Conn;

                conn.Open();

                using (SQLiteCommand command = new SQLiteCommand())
                {
                    string sql = $"SELECT {CODIGO}, {NOMBRE_CUENTA}, {TIPO_SALDO} FROM {TABLE_CUENTA} ";
                    sql += $"WHERE {CODIGO} = '1' OR {CODIGO} = '2' OR {CODIGO} = '31' OR {CODIGO} = '5' OR {CODIGO} = '41' OR {CODIGO} = '42'";

                    command.CommandText = sql;
                    command.Connection  = Conexion.Conn;

                    using (SQLiteDataReader result = command.ExecuteReader())
                    {
                        if (listaCuentas.Count > 0)
                        {
                            listaCuentas.Clear();
                        }

                        if (result.HasRows)
                        {
                            while (result.Read())
                            {
                                CuentaPartida cuenta = new CuentaPartida();
                                cuenta.Codigo    = result[CODIGO].ToString();
                                cuenta.Nombre    = result[NOMBRE_CUENTA].ToString();
                                cuenta.TipoSaldo = result[TIPO_SALDO].ToString();

                                listaCuentas.Add(cuenta);
                            }
                        }
                    }
                }

                conn.Close();
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            return(listaCuentas);
        }
Пример #9
0
        private List <CuentaPartida> getListCuentasPartida(int idPartida)
        {
            List <CuentaPartida> listaCuentasPartida = new List <CuentaPartida>();;


            using (SQLiteCommand command = new SQLiteCommand())
            {
                string sql = $"SELECT {TABLE_CUENTA}.{CODIGO}, {TABLE_CUENTA}.{NOMBRE_CUENTA}, {TABLE_CUENTA_PARTIDA}.{DEBE}, {TABLE_CUENTA_PARTIDA}.{HABER} FROM {TABLE_CUENTA} ";
                sql += $"INNER JOIN {TABLE_CUENTA_PARTIDA} ON {TABLE_CUENTA}.{ID_CUENTA} = {TABLE_CUENTA_PARTIDA}.{ID_CUENTA} WHERE {ID_PARTIDA} = @idPartida";

                command.CommandText = sql;
                command.Connection  = Conexion.Conn;
                command.Parameters.AddWithValue("@idPartida", idPartida);

                using (SQLiteDataReader result = command.ExecuteReader())
                {
                    if (listaCuentasPartida.Count > 0)
                    {
                        listaCuentasPartida.Clear();
                    }

                    if (result.HasRows)
                    {
                        while (result.Read())
                        {
                            CuentaPartida cuentaPartida = new CuentaPartida();

                            cuentaPartida.Codigo = result[CODIGO].ToString();
                            cuentaPartida.Nombre = result[NOMBRE_CUENTA].ToString();
                            cuentaPartida.Debe   = Convert.ToDouble(result[DEBE].ToString());
                            cuentaPartida.Haber  = Convert.ToDouble(result[HABER].ToString());

                            listaCuentasPartida.Add(cuentaPartida);
                        }
                    }
                }
            }


            return(listaCuentasPartida);
        }
Пример #10
0
 public LibroMayorDAO()
 {
     listaCodigos  = new List <string>();
     listaPartidas = new List <Partida>();
     cuentaPartida = new CuentaPartida();
 }