示例#1
0
 public ConfirmarPartida(Partida p, eOperacion operacion)
 {
     InitializeComponent();
     dbUser = new DBUsuario();
     dbPartida = new DBPartida();
     ACCION = operacion;
     PARTIDA = p;
     mostrarDatos();
 }
示例#2
0
        // FUNCIONES CRUD
        public bool insert(Partida partida, string sucursal, string empleado, string sistema)
        {
            bool OK = true;
            try
            {
                string sql = "ddsic.SP_INSERT_PARTIDA";
                MySqlCommand cmd = new MySqlCommand(sql, conn.conection);
                cmd.CommandType = CommandType.StoredProcedure;

                MySqlParameter num_periodo = cmd.Parameters.Add("num_periodo", MySqlDbType.Int32);
                num_periodo.Direction = ParameterDirection.Input;
                MySqlParameter num_partida = cmd.Parameters.Add("num_partida", MySqlDbType.Int32);
                num_partida.Direction = ParameterDirection.Input;
                MySqlParameter fecha_partida = cmd.Parameters.Add("fecha_partida", MySqlDbType.Date);
                fecha_partida.Direction = ParameterDirection.Input;
                MySqlParameter ref_partida = cmd.Parameters.Add("ref_partida", MySqlDbType.VarChar, 20);
                ref_partida.Direction = ParameterDirection.Input;
                MySqlParameter concepto_partida = cmd.Parameters.Add("concepto_partida", MySqlDbType.VarChar, 100);
                concepto_partida.Direction = ParameterDirection.Input;
                MySqlParameter bloquear_partida = cmd.Parameters.Add("bloquear_partida", MySqlDbType.Bit);
                bloquear_partida.Direction = ParameterDirection.Input;

                MySqlParameter items_partida = cmd.Parameters.Add("items_partida", MySqlDbType.LongText);
                items_partida.Direction = ParameterDirection.Input;

                MySqlParameter suc = cmd.Parameters.Add("suc", MySqlDbType.VarChar, 2);
                suc.Direction = ParameterDirection.Input;
                MySqlParameter emp = cmd.Parameters.Add("emp", MySqlDbType.VarChar, 15);
                emp.Direction = ParameterDirection.Input;
                MySqlParameter sys = cmd.Parameters.Add("sys", MySqlDbType.VarChar, 20);
                sys.Direction = ParameterDirection.Input;

                num_periodo.Value = partida.PERIODO;
                num_partida.Value = partida.NUMPARTIDA;
                fecha_partida.Value = partida.FECHA;
                ref_partida.Value = partida.REFERENCIA;
                concepto_partida.Value = partida.CONCEPTO;
                bloquear_partida.Value = partida.BLOQUEADA;

                items_partida.Value = buildItemsPartida(partida);

                suc.Value = sucursal;
                emp.Value = empleado;
                sys.Value = sistema;

                cmd.ExecuteNonQuery();
                MessageBox.Show("PARTIDA REGISTRADA", "OPERACION FINALIZADA", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception e)
            {
                OK = false;
                MessageBox.Show(null, e.Message, "ERROR AL REGISTRAR PARTIDA", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            return OK;
        }
示例#3
0
 private string buildItemsPartida(Partida partida)
 {
     string items = "";
     foreach (DataRow row in partida.MOVIMIENTOS.Rows)
     {
         items = items + row.Field<string>("COD_CTA") + ">"
             + row.Field<string>("DESCRIPCION") + ">"
             + row.Field<decimal>("DEBE") + ">"
             + row.Field<decimal>("HABER") + "&";
     }
     return items;
 }
示例#4
0
        public static Partida ConvertToPartida(DataRow dr)
        {
            Partida asiento = null;
            if (dr != null)
            {
                asiento = new Partida();
                if (dr.Table.Columns.Contains("PERIODO")) { asiento.PERIODO = dr.Field<int>("PERIODO"); }
                if (dr.Table.Columns.Contains("NUMPARTIDA")) { asiento.NUMPARTIDA = dr.Field<int>("NUMPARTIDA"); }
                if (dr.Table.Columns.Contains("COD_TRANS")) { asiento.COD_TRANS = dr.Field<string>("COD_TRANS"); }
                if (dr.Table.Columns.Contains("FECHA")) { asiento.FECHA = dr.Field<DateTime>("FECHA"); }
                if (dr.Table.Columns.Contains("REFERENCIA")) { asiento.REFERENCIA =dr.Field<string>("REFERENCIA"); }
                if (dr.Table.Columns.Contains("CONCEPTO")) { asiento.CONCEPTO = dr.Field<string>("CONCEPTO"); }
                if (dr.Table.Columns.Contains("INIT_BALANCE")) { asiento.INIT_BALANCE = dr.Field<bool>("INIT_BALANCE"); }
                if (dr.Table.Columns.Contains("BLOQUEADA")) { asiento.BLOQUEADA = dr.Field<bool>("BLOQUEADA"); }
                
            }
            return asiento;

        }
示例#5
0
        public bool buscarPartida(int periodo,int partida)
        {
            bool OK = false;
            SELECTED = Partida.ConvertToPartida(dbPartida.findByPartida(periodo,partida));
            if (SELECTED != null)
            {
                ACCION = eOperacion.SEARCH;
                SELECTED.MOVIMIENTOS = dbPartida.getMovimientos(SELECTED);
                PARTIDA = SELECTED.Copy();
                cargarDatosPartida();
                calcularTotales();
                bloquear();
                OK = true;

                btnGuardar.Enabled = false;
                btnCancelar.Enabled = false;
                btnEditar.Enabled = true;
                btnEliminar.Enabled = true;
                btnAnular.Enabled = true;
            }
            else
            {
                OK = false;
            }
            return OK;
        }
示例#6
0
        private void CANCELAR(object sender, EventArgs e)
        {
            switch (ACCION)
            {
                case eOperacion.INSERT:
                    NUEVO(null, null);
                    break;
                case eOperacion.UPDATE:
                    ACCION = eOperacion.SEARCH;
                    PARTIDA = SELECTED.Copy();
                    cargarDatosPartida();
                    bloquear();

                    btnGuardar.Enabled = false;
                    btnCancelar.Enabled = false;
                    btnEditar.Enabled = true;
                    btnEliminar.Enabled = true;
                    btnAnular.Enabled = true;

                    break;
            }
        }
示例#7
0
        private void NUEVO(object sender, EventArgs e)
        {
            ACCION = eOperacion.INSERT;
            limpiar();
            PARTIDA = new Partida();
            PARTIDA.FECHA = HOME.Instance().FECHA_SISTEMA;
            PARTIDA.PERIODO = PARTIDA.FECHA.Year;
            PARTIDA.NUMPARTIDA = dbPartida.nextNumPartida(PARTIDA.PERIODO);

            cargarDatosPartida();
            desbloquear();
            txtREFERENCIA.Focus();

            btnGuardar.Enabled = true;
            btnCancelar.Enabled = true;
            btnEditar.Enabled = false;
            btnEliminar.Enabled = false;
            btnAnular.Enabled = false;
        }
示例#8
0
        public DataTable getMovimientos(Partida partida)
        {
            MySqlDataReader reader;
            DataTable datos = new DataTable();
            try
            {
                string sql = "SELECT * FROM ddsic.view_libro_diario WHERE PERIODO = @num_periodo AND NUMPARTIDA = @num_partida;";
                MySqlCommand cmd = new MySqlCommand(sql, conn.conection);
                cmd.CommandType = CommandType.Text;

                MySqlParameter num_periodo = cmd.Parameters.Add("num_periodo", MySqlDbType.Int32);
                num_periodo.Direction = ParameterDirection.Input;
                MySqlParameter num_partida = cmd.Parameters.Add("num_partida", MySqlDbType.Int32);
                num_partida.Direction = ParameterDirection.Input;

                num_periodo.Value = partida.PERIODO;
                num_partida.Value = partida.NUMPARTIDA;

                reader = cmd.ExecuteReader();
                if (reader.HasRows)
                {
                    datos.Load(reader);
                }
                reader.Close();
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "ERROR AL CONSULTAR MOVIMIENTO DE PARTIDA DIARIA", MessageBoxButtons.OK, MessageBoxIcon.Error);
                throw e;
            }
            return datos;
        }
示例#9
0
        public bool delete(Partida partida, string sucursal, string empleado, string sistema)
        {
            bool OK = true;
            try
            {
                string sql = "ddsic.SP_DELETE_PARTIDA";
                MySqlCommand cmd = new MySqlCommand(sql, conn.conection);
                cmd.CommandType = CommandType.StoredProcedure;
                MySqlParameter num_periodo = cmd.Parameters.Add("num_periodo", MySqlDbType.Int32);
                num_periodo.Direction = ParameterDirection.Input;
                MySqlParameter num_partida = cmd.Parameters.Add("num_partida", MySqlDbType.Int32);
                num_partida.Direction = ParameterDirection.Input;

                MySqlParameter suc = cmd.Parameters.Add("suc", MySqlDbType.VarChar, 2);
                suc.Direction = ParameterDirection.Input;
                MySqlParameter emp = cmd.Parameters.Add("emp", MySqlDbType.VarChar, 15);
                emp.Direction = ParameterDirection.Input;
                MySqlParameter sys = cmd.Parameters.Add("sys", MySqlDbType.VarChar, 20);
                sys.Direction = ParameterDirection.Input;

                num_periodo.Value = partida.PERIODO;
                num_partida.Value = partida.NUMPARTIDA;

                suc.Value = sucursal;
                emp.Value = empleado;
                sys.Value = sistema;

                cmd.ExecuteNonQuery();
                MessageBox.Show(" PARTIDA N° " + partida.NUMPARTIDA + " ELIMINADA", "OPERACION FINALIZADA", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception e)
            {
                OK = false;
                MessageBox.Show(e.Message, "ERROR AL ELIMINAR PARTIDA N° " + partida.NUMPARTIDA, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            return OK;
        }