/// <summary>
 /// Carga detalles en dataGridView
 /// </summary>
 private void cargarDetallesMovimiento()
 {
     try
     {
         costoTotalConIva = Convert.ToDouble(txtVentaTotalConIva.Text.Trim());
         // Calcular costos totales
         costoTotalConIva = MovimientosBL.calcularCostoTotalConIva(costoUnitarioConIva, cantidadMovimiento, costoTotalConIva);
         costoTotalSinIva = (costoTotalConIva / 1.13);
         //Mostrar valores
         txtVentaTotalSinIva.Text = Convert.ToString(costoTotalSinIva);
         txtVentaTotalConIva.Text = Convert.ToString(costoTotalConIva);
         //Cargo arreglo en una fila del dataGridView
         dgvDetallesMovimientos.Rows.Add(datosDetalle);
         datosDetalle = new String[] {
         };
     }
     catch (Exception e)
     {
         MessageBox.Show(
             e.Message,
             "Error al cargar los detalles",
             MessageBoxButtons.OK,
             MessageBoxIcon.Error
             );
     }
     // Limpio el formulario
     limpiarFormulario();
 }
        private bool crearDetalleMovimiento(movimientos objMovimientos)
        {
            bool    bandera            = false;
            decimal existenciaTotal    = 0;
            decimal existenciaAnterior = 0;
            decimal cantidadMovimiento = 0;

            //Recorre las filas..
            foreach (DataGridViewRow fila in dgvDetallesMovimientos.Rows)
            {
                if (fila.Cells[0].Value != null)
                {
                    try
                    {
                        //Crear Objeto de detalles_movimientos
                        objDetallesMovimientos = new detalles_movimientos();
                        cantidadMovimiento     = Convert.ToDecimal(fila.Cells["cantidad"].Value.ToString());
                        existenciaTotal        = Convert.ToDecimal(fila.Cells["existencia_total"].Value.ToString());
                        existenciaAnterior     = (existenciaTotal - cantidadMovimiento);

                        objDetallesMovimientos.id_movimiento     = Convert.ToInt32(objMovimientos.id_movimiento.ToString());
                        objDetallesMovimientos.id_producto       = Convert.ToInt32(fila.Cells["id_producto"].Value.ToString());
                        objDetallesMovimientos.id_bodega         = Convert.ToInt32(fila.Cells["id_bodega"].Value.ToString());
                        objDetallesMovimientos.fecha_vencimiento = Convert.ToDateTime(fila.Cells["fecha_vencimiento"].Value.ToString());
                        objDetallesMovimientos.lote                    = Convert.ToString(fila.Cells["lote"].Value.ToString());
                        objDetallesMovimientos.cantidad                = cantidadMovimiento;
                        objDetallesMovimientos.costo_unitario          = Convert.ToDecimal(fila.Cells["costo_unitario"].Value.ToString());
                        objDetallesMovimientos.costo_unitario_promedio = Convert.ToDecimal(fila.Cells["costo_unitario_promedio"].Value.ToString());
                        objDetallesMovimientos.existencia_anterior     = existenciaAnterior;
                        objDetallesMovimientos.existencia_total        = existenciaTotal;
                        objDetallesMovimientos.estado                  = Convert.ToInt32(fila.Cells["estado"].Value.ToString());

                        detalles_movimientos respuestaDetalle = MovimientosBL.crearDetalleMovimientos(objDetallesMovimientos, objMovimientos);
                        Debug.Write(respuestaDetalle);
                        if (respuestaDetalle == null)
                        {
                            bandera = false;
                        }
                        else
                        {
                            bandera = true;
                        }
                    }
                    catch (Exception error)
                    {
                        MessageBox.Show(
                            "Error al crear detalle de este movimiento " + error,
                            "Error",
                            MessageBoxButtons.OK,
                            MessageBoxIcon.Exclamation
                            );
                        break;
                    }
                }
            }
            return(bandera);
        }
        private void btnCrearMovimiento_Click(object sender, EventArgs e)
        {
            //Crear Objeto de movimientos

            objMovimientos = new movimientos();
            objMovimientos.id_tipo_movimiento = Convert.ToInt32(tipoMovimiento);
            objMovimientos.fecha               = Convert.ToDateTime(txtFecha.Text.Trim());
            objMovimientos.hora                = DateTime.Now.TimeOfDay;
            objMovimientos.descripcion         = nombreMovimiento.ToString();
            objMovimientos.costo_total_con_iva = Convert.ToDecimal(txtVentaTotalConIva.Text.Trim());
            objMovimientos.costo_total_sin_iva = Convert.ToDecimal(txtVentaTotalSinIva.Text.Trim());
            objMovimientos.id_usuario          = Convert.ToInt32(txtIdUsuario.Text.Trim());
            objMovimientos.estado              = 1;

            if (tipoMovimiento == "1")
            {
                objMovimientos.id_proveedor = Convert.ToInt32(cmbAuxiliar.SelectedValue.ToString());
            }

            var confirmacionMovimiento = MovimientosBL.crearMovimiento(objMovimientos);
            int idMovimiento           = Convert.ToInt32(confirmacionMovimiento.id_movimiento);

            if (idMovimiento > 1)
            {
                bool detalleCreado = crearDetalleMovimiento(confirmacionMovimiento);

                if (detalleCreado)
                {
                    MessageBox.Show(
                        "Movimiento Generado correctamente",
                        "Movimiento Creado",
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Information
                        );
                    this.Close();
                }
                else
                {
                    MessageBox.Show(
                        "Error al crear este movimiento ",
                        "Error",
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Exclamation
                        );
                }
            }
        }
예제 #4
0
 private void cargarMovimientos()
 {
     dtgMovimientos.AutoGenerateColumns = false;
     dtgMovimientos.DataSource          = MovimientosBL.cargarMovimientos();
 }
예제 #5
0
 private int consultarNumeroMovimientos()
 {
     return(MovimientosBL.consultarNumeroMovimientos());
 }