Exemplo n.º 1
0
        private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex < 0)
            {
                return;
            }
            if (dataGridView1.Rows[e.RowIndex].Cells[1].Value == DBNull.Value)
            {
                return;
            }
            int rowIndex = e.RowIndex;

            int    item     = Convert.ToInt32(dataGridView1.Rows[rowIndex].Cells[0].Value);
            string catalogo = dataGridView1.Rows[rowIndex].Cells[1].Value.ToString();

            osa_indiv        i       = new osa_indiv(item, osaSeleccionada.Id);
            productos        p       = new productos(i.ID_PRODUCTO2);
            inventariocostos invCost = new inventariocostos(i.ID_PRODUCTO2, true);

            FormDevolucion d = new FormDevolucion();

            d.labelProducto.Text     = "OSA no. " + osaSeleccionada.Id + ",  ITEM: " + item + ",  CATALOGO: " + catalogo;
            d.textBoxExistencia.Text = i.QTY2.ToString();
            d.existencia             = i.QTY2;
            d.stock = p.STOCK;
            d.ShowDialog();

            if (d.DialogResult == DialogResult.OK)
            {
                if (d.existencia < i.QTY2)
                {
                    #region WHILE DEVOLVER A iNVENTARIOCOSTOS
                    if (invCost.Id > 0)
                    {
                        int diferenciaOen = invCost.cantidad_oen - invCost.cantidad_actual;
                        int restaOsa      = i.QTY2 - d.existencia;

                        if (restaOsa <= diferenciaOen)
                        {
                            invCost.cantidad_actual += restaOsa;
                            invCost.Update("Id");
                        }
                        else
                        {
                            int qty = restaOsa;

                            invCost.cantidad_actual += diferenciaOen;
                            invCost.Update("Id");
                            qty -= diferenciaOen;

                            while (qty > 0)
                            {
                                inventariocostos invCost2 = new inventariocostos(i.ID_PRODUCTO2, true);
                                if (invCost2.Id > 0)
                                {
                                    int restaOen = invCost2.cantidad_oen - invCost2.cantidad_actual;
                                    if (qty <= restaOen)
                                    {
                                        invCost2.cantidad_actual += qty;
                                        invCost2.Update("Id");
                                        qty = 0;
                                    }
                                    else
                                    {
                                        invCost2.cantidad_actual += restaOen;
                                        invCost2.Update("Id");
                                        qty -= restaOen;
                                    }
                                }
                                else
                                {
                                    MessageBox.Show("No hay ordenes de entrada para este producto");
                                    qty = 0;
                                }
                            }
                        }
                    }
                    else
                    {
                        MessageBox.Show("No hay ordenes de entrada para estos productos");
                    }

                    #endregion WHILE DEVOLVER A INVENTARIOcOSTOS

                    i.QTY2  = d.existencia;
                    p.STOCK = d.stock;
                    i.Update("Id");
                    p.Update("Id");

                    MessageBox.Show("Devolucion aplicada");
                    VerDGV(osaSeleccionada.Id);
                    foreach (DataGridViewRow fila in dataGridView1.Rows)
                    {
                        string cantidad = fila.Cells[2].ToString();
                        string cat      = fila.Cells[1].ToString();
                    }
                }
            }
            if (osaSeleccionada.idpoliza > 0)
            {
                double tot = 0;
                foreach (DataGridViewRow fila in dataGridView1.Rows)
                {
                    if (fila.Cells[3].Value != null)
                    {
                        string cantidad = fila.Cells[3].Value.ToString();
                        catalogo = fila.Cells[1].Value.ToString();
                        item     = Convert.ToInt32(dataGridView1.Rows[fila.Index].Cells[0].Value);
                        i        = new osa_indiv(item, osaSeleccionada.Id);
                        p        = new productos(i.ID_PRODUCTO2);
                        tot     += Convert.ToInt32(cantidad) * p.PrecioAlmacen;
                    }
                }
                polizasdb pol = new polizasdb(osaSeleccionada.idpoliza);
                pol.subtotal = tot;
                pol.egreso   = tot;
                pol.Update("folio");
            }
        }
Exemplo n.º 2
0
        private void button1_Click(object sender, EventArgs e)
        {
            try{ Convert.ToDouble(textBoxTipoCambio.Text); }
            catch { MessageBox.Show("Falta tipo de cambio correcto"); return; }
            OSAGralSeleccionada.ID_CLIENTE = ClienteSeleccionado.ID;
            if (checkBoxPorProyecto.Checked == true)
            {
                OSAGralSeleccionada.PROYECTO_ID = proyectoSeleccionado.ID;
            }
            else
            {
                OSAGralSeleccionada.PROYECTO_ID = 0;
            }
            OSAGralSeleccionada.FACTURA    = FACTURA.Text;
            OSAGralSeleccionada.REMISION   = REMISION.Text;
            OSAGralSeleccionada.COTIZACION = COTIZACION.Text;
            OSAGralSeleccionada.TC         = Convert.ToDouble(textBoxTipoCambio.Text);
            OSAGralSeleccionada.Update("Id");

            if (FACTURA.Text != "")
            {
                polizaseleccionada.factura = FACTURA.Text;
            }
            if (REMISION.Text != "")
            {
                polizaseleccionada.remision = REMISION.Text;
            }
            if (txtpo.Text != "")
            {
                polizaseleccionada.pocliente = txtpo.Text;
            }
            polizaseleccionada.tipocambio = Convert.ToDouble(textBoxTipoCambio.Text);
            polizaseleccionada.idcliente  = ClienteSeleccionado.ID;
            polizaseleccionada.subdestino = ClienteSeleccionado.RAZON_SOCIAL;
            if (checkBoxPorProyecto.Checked == true)
            {
                polizaseleccionada.destino    = "PREFACTURA PROYECTOS";
                polizaseleccionada.idproyecto = proyectoSeleccionado.ID;
            }
            else
            {
                polizaseleccionada.destino = "PREFACTURA PRODUCTOS"; polizaseleccionada.idproyecto = 0;
            }
            if (comboVendedor.Text == "Felipe Ortiz" || comboVendedor.Text == "Oficina" || comboVendedor.Text == "Antonio Viera")
            {
                polizaseleccionada.idnegocio = 1;
            }
            else if (comboVendedor.Text == "Jesus ortiz")
            {
                polizaseleccionada.idnegocio = 19;
            }
            else if (comboVendedor.Text == "Samuel" || comboVendedor.Text == "Taller")
            {
                polizaseleccionada.idnegocio = 18;
            }
            else if (comboVendedor.Text != "")
            {
                polizaseleccionada.idnegocio = 3;
            }
            polizaseleccionada.Update("folio");
            this.Close();
        }