Exemplo n.º 1
0
        private bool fncAltaLinea()
        {
            bool vOk = false;

            cEntregas.LinPrepEntregas cPrepEnt = new cEntregas.LinPrepEntregas();

            if (txCan.Text == "")
            {
                txCan.Text = "0";
            }


            cPrepEnt.Empresa         = cParamXml.Emp;
            cPrepEnt.NumPrep         = Convert.ToInt32(txPrep.Text);
            cPrepEnt.Producto        = txProd.Text;
            cPrepEnt.Descripción     = txDesProd.Text;
            cPrepEnt.Cantidad        = Convert.ToDecimal(txCan.Text);
            cPrepEnt.Lote            = txLote.Text;
            cPrepEnt.CantidadServida = 0;
            cPrepEnt.CanPen          = Convert.ToDecimal(txCan.Text);
            cPrepEnt.FechaEntrega    = dTEntrega.Value;
            cPrepEnt.PedLocal        = "";
            cPrepEnt.LinPedLocal     = 0;
            cPrepEnt.PedCliente      = txPedCli.Text;
            vOk = cPrepEnt.fncAltaLin();

            return(vOk);
        }
Exemplo n.º 2
0
        private bool fncBajaLinea()
        {
            bool vOk = true;

            if (bS2.Current != null)
            {
                cEntregas.LinPrepEntregas linp = (cEntregas.LinPrepEntregas)bS2.Current;
                if (linp.CantidadServida > 0)
                {
                    //MessageBox.Show("Esta Linea tiene cantidad servida NO se puede eliminar");
                    //bS2.CancelEdit();
                    //vOk = false;

                    vOk = fncBajaCaja(linp);
                    cEntregas.CabPrepEntrega cabventa = (cEntregas.CabPrepEntrega)bS1.Current;
                    vIni = true;
                    sbrLimpiaEnt();
                    sbrCargaLineas(cabventa.NumPrep.ToString());
                    Application.DoEvents();
                    vIni = false;


                    return(vOk);
                }
                string vMen = "Esta seguro de Eliminar la linea?";
                string vTit = "Eliminar";
                if (MessageBox.Show(vMen, vTit, MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    try
                    {
                        if (!linp.fncBaja(linp.NumPrep.ToString()))
                        {
                            MessageBox.Show("No se ha podido Eliminar la propiedad");
                            bS2.CancelEdit();
                            vOk = false;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("No se ha podido Eliminar la linea :'" + ex.Message + "'");
                        bS2.CancelEdit();
                        vOk = false;
                    }
                }
                else
                {
                    bS2.CancelEdit();
                    vOk = false;
                }
            }
            return(vOk);
        }
Exemplo n.º 3
0
        private bool fncCreaLinea(int vPrep, int vPed, int vLin)
        {
            bool vOk = false;

            try
            {
                cPedidosVenta.CabVenta    oCabVenta = new cPedidosVenta.CabVenta();
                cPedidosVenta.LinVenta    oLinVenta = new cPedidosVenta.LinVenta();
                cEntregas.LinPrepEntregas oLinEnt   = new cEntregas.LinPrepEntregas();

                //Traemos los datos de la cabezera del Pedido
                oCabVenta.fncTrae(vPed);

                //Traemos loa datos de la linea del pedido
                oLinVenta.fncTrae(vPed, vLin);

                //Los cargamos en la linea de la entrega
                oLinEnt.Empresa         = oLinVenta.Empresa;
                oLinEnt.NumPrep         = vPrep;
                oLinEnt.Producto        = oLinVenta.Producto;
                oLinEnt.Descripción     = oLinVenta.Descripción;
                oLinEnt.Cantidad        = oLinVenta.CantidadPendiente;
                oLinEnt.Lote            = oLinVenta.Lote;
                oLinEnt.CantidadServida = 0;
                oLinEnt.CanPen          = oLinVenta.CantidadPendiente;
                oLinEnt.FechaEntrega    = oLinVenta.FechaEntrega;
                oLinEnt.PedLocal        = vPed.ToString();
                oLinEnt.LinPedLocal     = vLin;
                oLinEnt.PedCliente      = oCabVenta.SuPedido;

                //Damos de alta la linea
                vOk = oLinEnt.fncAltaLin();
            }
            catch { vOk = false; }

            return(vOk);
        }
Exemplo n.º 4
0
        private bool fncElimEntregar(string vReg)
        {
            //_Res += ID + "#" +vAlb + "#" + vLin + "#" + vIdOF + "#" + vCaja + "#" + vCan + "#" + vLote + "|";

            bool vOk = false;

            cEntregas.LinPrepEntregas linp = (cEntregas.LinPrepEntregas)bS2.Current;
            int    vNumPrep = linp.NumPrep;
            int    vLinPrep = linp.LinPrep;
            string vsNumPed = linp.PedLocal;

            if (vsNumPed == "")
            {
                vsNumPed = "0";
            }
            int    vNumPed = Convert.ToInt32(vsNumPed);
            int    vLinPed = linp.LinPedLocal;
            string vProd   = linp.Producto;


            using (SqlConnection dbConec = new SqlConnection(cParamXml.strConecProduc_Prueb))
            {
                dbConec.Open();
                SqlTransaction dbTr = dbConec.BeginTransaction();
                try
                {
                    string[] vmReg = vReg.Split('|');
                    for (int i = 0; i < vmReg.Length; i++)
                    {
                        string vR = vmReg[i].ToString();
                        if (vR.Length < 2)
                        {
                            break;
                        }

                        string[] vmR = vR.Split('#');

                        int    vID    = Convert.ToInt32(vmR[0].ToString());
                        string vOFL   = vmR[3].ToString();
                        string vCajas = vmR[4].ToString();
                        string vCan   = vmR[5].ToString();
                        string vLote  = vmR[6].ToString();
                        string vUbi   = cMovimientos.Articulo.fncTraeUbi(cParamXml.Emp, vNumPrep.ToString(), vProd, "Salida", "-" + vCan, vLote);

                        int vNumAlb = 0;
                        //Damos de Baja la linea
                        cAlbaranesVenta.LinAlb oLinAlb = new cAlbaranesVenta.LinAlb();
                        if (oLinAlb.fncBaja(vID, dbConec, dbTr))
                        {
                            //Grabamos la cantridad entregada de la preparación
                            if (cEntregas.LinPrepEntregas.fncMenosCantidadServida(cParamXml.Emp.ToString(), vNumPrep, vLinPrep, vCan.ToString(), dbConec, dbTr))
                            {
                                //Si la entrega es de un pedido de modifica la cantidad entregada del pedido
                                if (vNumPed != 0)
                                {
                                    if (!cPedidosVenta.LinVenta.fncMenosCantidadServida(cParamXml.Emp.ToString(), vNumPed, vLinPed, vCan.ToString(), dbConec, dbTr))
                                    {
                                        return(vOk);
                                    }
                                }
                                //Movimientos de Producto
                                cMovimientos.Articulo oMov = new cMovimientos.Articulo();

                                if (oMov.fncAlta(cParamXml.Emp, "Entrada", DateTime.Now, DateTime.Now, cParamXml.AlmacenMat, vProd, txDesProd.Text,
                                                 vCan.ToString(), vNumPrep.ToString(), vOFL, vUbi, vLote))
                                {
                                    vOk = true;
                                }
                            }
                        }

                        //Descactivamos las cajas seleccionadas
                        if ((vCajas != "") & (vOFL != ""))
                        {
                            string[] vmCajas = vCajas.Split(',');
                            for (int i2 = 0; i2 < vmCajas.Length; i2++)
                            {
                                string vSql   = "";
                                string vTabla = " GC_OrdenProdCajas";
                                string vCampo = "Entregada";
                                string vWhere = " IdOF = '" + vOFL.Trim() + "' AND (NumCajaBolsa = " + vmCajas[i2] + ")";
                                vSql = cConstantes.SQL_UP_Update;
                                vSql = vSql.Replace("[?1]", "[" + vCampo + "]");
                                vSql = vSql.Replace("[?2]", "0");
                                vSql = vSql.Replace("[?3]", vWhere);
                                vSql = vSql.Replace("[?99]", vTabla);
                                int viOk = SQLDataAccess.GEN_ExecuteNonQuery(vSql, cParamXml.strConecProduc_Prueb);
                            }
                        }
                    }
                }
                catch { vOk = false; }

                if (vOk)
                {
                    //Al terminar correctamente los cambios se graban
                    dbTr.Commit();
                    vOk = true;
                }
                else
                {
                    //Al terminar con error se revierten los cambios
                    dbTr.Rollback();
                    vOk = false;
                }
            }


            return(vOk);
        }
Exemplo n.º 5
0
        private bool fncBajaCaja(cEntregas.LinPrepEntregas linp)
        {
            bool      vOk  = false;
            string    vSql = "";
            DataTable dt2;

            //vSql = cConstantes.SQL_Alb_Entrega;
            //vSql = vSql.Replace("[?vbCr]", cConstantes.vbCtr.ToString());
            //vSql = vSql.Replace("[?vbLf]", cConstantes.vbLF.ToString());
            //vSql = vSql.Replace("[?Emp]", cParamXml.Emp.ToString());
            //vSql = vSql.Replace("[?NumPrep]", linp.NumPrep.ToString());
            //vSql = vSql.Replace("[?Prod]", linp.Producto);
            //DataTable dt = SQLDataAccess.Trae(vSql, cUtil.SQLConec(cParamXml.strConec));
            //if (dt.Rows.Count > 0)
            //{
            //    string vProd = "";
            //    string vDesProd = "";

            //    string vWhere = "";
            //    foreach(DataRow dr in dt.Rows)
            //    {
            //        string vLotes = dr["Lote"].ToString();
            //        string vCajas = dr["Cajas"].ToString();

            //        string vOF = cUtil.Piece(vLotes, "|", 2);
            //        if (vOF != "")
            //        {
            //            vWhere += "(IdOF = '" + vOF.Trim() + "') AND (NumCajaBolsa IN (" + vCajas + ")) OR ";
            //        }


            //    }



            //    if (vWhere != "")
            //    {
            //        vWhere = "Where " + vWhere.Substring(0, vWhere.Length - 3);
            //    }



            //    if (vWhere != "")
            //    {
            //        vSql = cConstantes.SQL_ElimCajaEntrega;
            //        vSql = vSql.Replace("[?vbCr]", cConstantes.vbCtr.ToString());
            //        vSql = vSql.Replace("[?vbLf]", cConstantes.vbLF.ToString());
            //        vSql = vSql.Replace("[?Filtro]", vWhere);
            //        dt2 = SQLDataAccess.Trae(vSql, cUtil.SQLConec(cParamXml.strConec));
            //    }
            //    else
            //    {
            //        vSql = cConstantes.SQL_ElimAlbEntrega;
            //        vSql = vSql.Replace("[?vbCr]", cConstantes.vbCtr.ToString());
            //        vSql = vSql.Replace("[?vbLf]", cConstantes.vbLF.ToString());
            //        vSql = vSql.Replace("[?Emp]", cParamXml.Emp.ToString());
            //        vSql = vSql.Replace("[?NumPrep]", linp.NumPrep.ToString());
            //        dt2 = SQLDataAccess.Trae(vSql, cUtil.SQLConec(cParamXml.strConec));

            //    }


            vSql = cConstantes.SQL_Alb_Entrega;
            vSql = vSql.Replace("[?vbCr]", cConstantes.vbCtr.ToString());
            vSql = vSql.Replace("[?vbLf]", cConstantes.vbLF.ToString());
            vSql = vSql.Replace("[?Emp]", cParamXml.Emp.ToString());
            vSql = vSql.Replace("[?NumPrep]", linp.NumPrep.ToString());
            vSql = vSql.Replace("[?Prod]", linp.Producto);
            dt2  = SQLDataAccess.Trae(vSql, cUtil.SQLConec(cParamXml.strConec));


            if (dt2.Rows.Count > 0)
            {
                frmElimCajasPrep frm = new frmElimCajasPrep();
                frm.dt   = dt2;
                frm.Prep = linp.NumPrep + "#" + linp.Producto + "#" + linp.Descripción;
                frm.ShowDialog();

                string vElim = frm.Res;

                string[] vmElim = vElim.Split('|');
                for (int i = 0; i < vmElim.Length; i++)
                {
                    string[] vmCaja = vmElim[i].Split('#');
                    if (vmCaja.Length > 1)
                    {
                        string vOF      = vmCaja[0];
                        string vNumCaja = vmCaja[1];
                    }
                }


                if (vElim != "")
                {
                    fncElimEntregar(vElim);
                }
                //}
            }

            return(vOk);
        }
Exemplo n.º 6
0
        private void btGrabar_Click(object sender, EventArgs e)
        {
            if (lbSitu.Text == "Modificación")
            {
                if (txCanSer.Text != "")
                {
                    decimal vCanSer = Convert.ToDecimal(txCanSer.Text);
                    decimal vCan    = Convert.ToDecimal(txCan.Text);
                    if (vCan < vCanSer)
                    {
                        MessageBox.Show("La cantidad no puede ser menor que la cantidad servida");
                        return;
                    }
                }

                cEntregas.LinPrepEntregas cPrepEnt = new cEntregas.LinPrepEntregas();

                DataGridViewRow dr  = grLinPrep.CurrentRow;
                int             vId = Convert.ToInt32(dr.Cells["Id"].Value.ToString());
                cPrepEnt.Id = vId;


                string vCT  = txProd.Tag.ToString();
                string vTx  = txProd.Text;
                string vVal = dr.Cells[vCT].Value.ToString();
                if (vTx != vVal)
                {
                    cPrepEnt.fncGrabaCampo(vCT, vTx);
                }

                vCT  = txDesProd.Tag.ToString();
                vTx  = txDesProd.Text;
                vVal = dr.Cells[vCT].Value.ToString();
                if (vTx != vVal)
                {
                    cPrepEnt.fncGrabaCampo(vCT, vTx);
                }



                vCT  = txCan.Tag.ToString();
                vTx  = txCan.Text;
                vVal = dr.Cells[vCT].Value.ToString();
                if (vTx != vVal)
                {
                    cPrepEnt.fncGrabaCampo(vCT, vTx);
                    cPrepEnt.fncCantidadPendiente();
                }

                vCT  = dTEntrega.Tag.ToString();
                vTx  = dTEntrega.Text;
                vVal = dr.Cells[vCT].Value.ToString();
                if (vTx != vVal)
                {
                    cPrepEnt.fncGrabaCampo(vCT, vTx);
                }

                vCT  = txLote.Tag.ToString();
                vTx  = txLote.Text;
                vVal = dr.Cells[vCT].Value.ToString();
                if (vTx != vVal)
                {
                    cPrepEnt.fncGrabaCampo(vCT, vTx);
                }

                vCT  = txPedCli.Tag.ToString();
                vTx  = txPedCli.Text;
                vVal = dr.Cells[vCT].Value.ToString();
                if (vTx != vVal)
                {
                    cPrepEnt.fncGrabaCampo(vCT, vTx);
                }

                sbrCargaLineas(txPrep.Text);
                sbrLimpiaEnt();
                txProd.Focus();
            }

            if (lbSitu.Text == "Alta")
            {
                if (txProd.Text == "")
                {
                    MessageBox.Show("El Producto NO esta informado");
                    txProd.Focus();
                    return;
                }
                if ((txCan.Text == "") | (txCan.Text == "0"))
                {
                    MessageBox.Show("La cantidad NO esta informada");
                    txCan.Focus();
                    return;
                }

                if (fncAltaLinea())
                {
                    sbrCargaLineas(txPrep.Text);
                    sbrLimpiaEnt();
                    txProd.Focus();
                }
            }
        }