Пример #1
0
        private void SaveInter()
        {
            try
            {
                DataTable dt = (DataTable)Session[_namesession_inter];
                if (dt != null)
                {
                    if (dt.Rows.Count == 0)
                    {
                        msnMessage.LoadMessage("Lamentablemente no se ha guardado el archivo", UserControl.ucMessage.MessageType.Error);
                    }
                    else
                    {
                        DataTable dtvalida = new DataTable();
                        dtvalida.Columns.Add("dniruc", typeof(string));
                        dtvalida.Columns.Add("pedido", typeof(string));
                        dtvalida.Columns.Add("op", typeof(string));
                        dtvalida.Columns.Add("fecha", typeof(DateTime));
                        dtvalida.Columns.Add("monto", typeof(Decimal));

                        for (Int32 i = 0; i < dt.Rows.Count; ++i)
                        {
                            string   dniruc = dt.Rows[i]["doc"].ToString();
                            string   pedido = dt.Rows[i]["liq"].ToString();
                            string   op     = dt.Rows[i]["op"].ToString();
                            DateTime fecha  = Convert.ToDateTime(dt.Rows[i]["fecha"]);
                            Decimal  monto  = Convert.ToDecimal(dt.Rows[i]["tpagar"]);
                            dtvalida.Rows.Add(dniruc, pedido, op, fecha, monto);
                        }

                        string ban_id = Session[_namsession_banco].ToString();

                        string _error = Documents_Trans.SaveValidaInter(ban_id, _user._bas_id, dtvalida);

                        if (_error != "-1")
                        {
                            msnMessage.LoadMessage("Se guardo correctamente. El archivo del banco Interbank" + " Última actualización: " + DateTime.Now, UserControl.ucMessage.MessageType.Information);
                        }
                        else
                        {
                            msnMessage.LoadMessage("Lamentablemente no se ha guardado el archivo", UserControl.ucMessage.MessageType.Error);
                        }
                    }
                }
                else
                {
                    msnMessage.LoadMessage("Lamentablemente no se ha guardado el archivo", UserControl.ucMessage.MessageType.Error);
                }
            }
            catch (Exception ex)
            {
                GridView1.Visible = false;
                string msg;
                msg = ex.Message;

                msnMessage.LoadMessage("Se genero el error: " + ex.Message, UserControl.ucMessage.MessageType.Error);
            }
        }
Пример #2
0
        private void initGrid(DateTime start, DateTime end, string var_cliente)
        {
            this.Session[this._nameSessionData] = Documents_Trans.get_Docn_TransAdonis(start, end, var_cliente).Tables[0];
            this.gvDocTrans.DataSource          = (DataTable)this.Session[this._nameSessionData];
            this.gvDocTrans.DataBind();

            //this.Session[this._nameSessionData] = (object)Documents_Trans.get_Docn_TransAdonis(start, end,var_cliente);
            //this.gvDocTrans.DataSourceID = this.odsConsult.ID;
            //this.gvDocTrans.DataBind();
            //MergeRows(gvDocTrans, 2);
        }
Пример #3
0
        protected void ibExportDoc_Click(object sender, ImageClickEventArgs e)
        {
            DataTable dt = null;

            try
            {
                DateTime fechaini = Convert.ToDateTime(txtDateStart.Text);
                DateTime fechafin = Convert.ToDateTime(txtDateEnd.Text);
                dt = Documents_Trans.get_Docn_TransAdonis(fechaini, fechafin, "-1", "2").Tables[0];
                if (dt.Rows.Count > 0)
                {
                    DateTime _fecStart = Convert.ToDateTime((txtDateStart.Text.Equals(string.Empty)) ? "01/01/1900" : txtDateStart.Text);
                    DateTime _fecEnd   = Convert.ToDateTime((txtDateEnd.Text.Equals(string.Empty)) ? "01/01/1900" : txtDateEnd.Text);

                    DataSet   _interf = Adonis.Get_Comercial_Interface(_fecStart, _fecEnd);
                    DataTable dtinter = _interf.Tables[0];

                    DataRow[] foundRows = dtinter.Select("", "");

                    System.Text.StringBuilder str = new System.Text.StringBuilder();

                    for (int i = 0; i <= foundRows.GetUpperBound(0); i++)
                    {
                        str.Append(foundRows[i][0].ToString() + "\r\n");
                    }

                    Response.Clear();
                    Response.Buffer      = true;
                    Response.ContentType = "text/plain";
                    Response.AddHeader("Content-Disposition", "attachment;filename=InterComerAdonis.txt");
                    Response.Charset         = "UTF-8";
                    Response.ContentEncoding = System.Text.Encoding.Default;

                    System.IO.StringWriter       tw = new System.IO.StringWriter();
                    System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);

                    Response.Write(str.ToString());
                    Response.End();
                }
                else
                {
                    msnMessage.LoadMessage("No hay datos para exportar", UserControl.ucMessage.MessageType.Error);
                }
            }
            catch (Exception exc)
            {
                msnMessage.LoadMessage(exc.Message, UserControl.ucMessage.MessageType.Error);
                dt = null;
            }
        }
Пример #4
0
        protected void setNoDocTx(string docTx, bool action)
        {
            try
            {
                _lstDocTx = getListFromSes();
                Documents_Trans docTxObj = _lstDocTx.Where(x => x._docNo.Equals(docTx)).FirstOrDefault();
                _lstDocTx.Remove(docTxObj);
                docTxObj._check = action;
                _lstDocTx.Add(docTxObj);

                Session[_nameList] = _lstDocTx;
            }
            catch
            { }
        }
        private void sbconsultar()
        {
            DataTable dtview = Documents_Trans.leer_saldo_factura();

            gvReturns.DataSource = dtview;
            gvReturns.DataBind();
            Session[_nameSessionData] = dtview;

            if (dtview.Rows.Count > 0)
            {
                DataTable dt = new DataTable();
                dt.Columns.Add("dniruc", typeof(string));
                dt.Columns.Add("seriedoc", typeof(string));
                dt.Columns.Add("numerofac", typeof(string));
                dt.Columns.Add("numeronc", typeof(string));
                Session[_nameSessionCorrelativo] = dt;
            }
        }
        private string _anular_saldo()
        {
            string _error   = "";
            string _dni_ruc = "";
            Int32  _ingreso = 0;

            try
            {
                foreach (GridViewRow row in gvReturns.Rows)
                {
                    if (row.RowType == DataControlRowType.DataRow)
                    {
                        CheckBox chkanular = (row.Cells[10].FindControl("chkanular") as CheckBox);
                        if (chkanular.Checked)
                        {
                            if (_ingreso == 0)
                            {
                                Label lbldocumento = (row.Cells[0].FindControl("lbldocumento") as Label);
                                _dni_ruc += lbldocumento.Text;
                                _ingreso  = 1;
                            }
                            else
                            {
                                Label lbldocumento = (row.Cells[0].FindControl("lbldocumento") as Label);
                                _dni_ruc += "," + lbldocumento.Text;
                            }
                        }
                    }
                }

                if (_dni_ruc.Length > 0)
                {
                    _error = Documents_Trans._anular_saldo(_dni_ruc, _user._bas_id);
                }
            }
            catch (Exception exc)
            {
                _error = exc.Message;
            }
            return(_error);
        }
Пример #7
0
        public static string verificanc()
        {
            //return "0";
            Coordinator cust   = (Coordinator)HttpContext.Current.Session[_nameSessionCustomer];
            string      vidliq = "";

            if (!(Object.ReferenceEquals((HttpContext.Current.Session[_idliquidacion]), null)))
            {
                vidliq = HttpContext.Current.Session[_idliquidacion].ToString();
            }


            DataTable dt = Documents_Trans.get_PagoNcredito(cust._idCust.ToString(), vidliq).Tables[0];

            if (dt.Rows.Count == 0)
            {
                return("0");
            }
            else
            {
                return("1");
            }
        }
Пример #8
0
        protected void Save()
        {
            Be_Documents_trans objArray = new Be_Documents_trans();
            Be_Documents_trans objRpta  = new Be_Documents_trans();
            int contador;
            int restar2da = 0;

            contador = GridView1.Rows.Count;

            string[] varFecha       = new string[contador];
            string[] varDescripcion = new string[contador];
            //string[] varMonto = new string[contador];
            decimal[] varMonto     = new decimal[contador];
            string[]  varOperacion = new string[contador];
            string[]  varBanco     = new string[contador];
            DataTable dt           = null;

            try
            {
                dt = new DataTable();
                dt.Columns.Add("Pago_Fecha", typeof(DateTime));
                dt.Columns.Add("Pago_Descripcion", typeof(string));
                dt.Columns.Add("Pago_Monto", typeof(decimal));
                dt.Columns.Add("Pago_Operacion", typeof(string));
                dt.Columns.Add("Pag_BanId", typeof(string));


                for (int j = 0; j <= GridView1.Rows.Count - 1; j++)
                {
                    dt.Rows.Add(GridView1.Rows[j].Cells[0].Text.Replace("&nbsp;", "nulo"), GridView1.Rows[j].Cells[1].Text.Replace("&nbsp;", "nulo"), Convert.ToDecimal(GridView1.Rows[j].Cells[2].Text), GridView1.Rows[j].Cells[3].Text.Replace("&nbsp;", "nulo"), Session[_namsession_banco].ToString() /*dwBanks.SelectedValue.Replace("&nbsp;", "")*/);

                    varFecha[j - restar2da]       = GridView1.Rows[j].Cells[0].Text.Replace("&nbsp;", "nulo");
                    varDescripcion[j - restar2da] = GridView1.Rows[j].Cells[1].Text.Replace("&nbsp;", "nulo");
                    //varMonto[j - restar2da] =  Convert.ToDecimal(GridView1.Rows[j].Cells[2].Text.Replace("&nbsp;", "nulo"));
                    varMonto[j - restar2da]     = Convert.ToDecimal(GridView1.Rows[j].Cells[2].Text);
                    varOperacion[j - restar2da] = GridView1.Rows[j].Cells[3].Text.Replace("&nbsp;", "nulo");
                    varBanco[j - restar2da]     = dwBanks.SelectedValue.Replace("&nbsp;", "");
                }

                objArray.getSetFecha       = varFecha;
                objArray.getSetDescripcion = varDescripcion;
                objArray.getSetMonto       = varMonto;
                objArray.getSetOperacion   = varOperacion;
                objArray.getSetBanco       = varBanco;

                int    var_user_ID = System.Convert.ToInt32(_user._usn_userid);
                string _banco      = Session[_namsession_banco].ToString();
                objRpta = Documents_Trans.SaveValidateBank(objArray, var_user_ID, dt, _banco);


                if (objRpta.Ok)
                {
                    msnMessage.LoadMessage("Se guardo correctamente. " + objRpta.Mensaje + " Última actualización: " + DateTime.Now, UserControl.ucMessage.MessageType.Information);
                }
                else
                {
                    msnMessage.LoadMessage("Lamentablemente no se ha guardado el archivo", UserControl.ucMessage.MessageType.Error);
                }
            }
            catch (Exception ex)
            {
                GridView1.Visible = false;
                string msg;
                msg = ex.Message;

                msnMessage.LoadMessage("Se genero el error: " + ex.Message, UserControl.ucMessage.MessageType.Error);
            }
        }
        protected void btge_Click(object sender, EventArgs e)
        {
            try
            {
                msnMessage.Visible = false;

                DataTable dt_envia  = (DataTable)Session["_ReturnData"];
                DataTable dt_genera = new DataTable();
                dt_genera.Columns.Add("bas_id", typeof(Decimal));
                dt_genera.Columns.Add("monto_util", typeof(Decimal));
                dt_genera.Columns.Add("num_fac", typeof(string));
                dt_genera.Columns.Add("fec_fac", typeof(DateTime));
                dt_genera.Columns.Add("num_nc", typeof(string));
                dt_genera.Columns.Add("fec_nc", typeof(DateTime));

                DataRow[] _fila = dt_envia.Select("chk=1 and monto_util>0");

                if (_fila.Length > 0)
                {
                    for (Int32 i = 0; i < _fila.Length; ++i)
                    {
                        decimal  _bas_id     = Convert.ToDecimal(_fila[i]["bas_id"].ToString());
                        decimal  _monto_util = Convert.ToDecimal(_fila[i]["monto_util"].ToString());
                        string   _num_fac    = _fila[i]["seriefac"].ToString() + _fila[i]["numerofac"].ToString();;
                        DateTime _fec_fac    = Convert.ToDateTime(_fila[i]["fec_fac"].ToString());
                        string   _num_nc     = _fila[i]["serienc"].ToString() + _fila[i]["numeronc"].ToString();;
                        DateTime _fec_nc     = Convert.ToDateTime(_fila[i]["fec_nc"].ToString());

                        dt_genera.Rows.Add(_bas_id, _monto_util, _num_fac, _fec_fac, _num_nc, _fec_nc);
                    }

                    DataTable dt     = Documents_Trans.dt_ejecutar_provisiones(dt_genera, _user._bas_id);
                    string    script = string.Empty;
                    if (dt == null || dt.Rows.Count == 0)
                    {
                        msnMessage.LoadMessage("Error al generar los anticipos", UserControl.ucMessage.MessageType.Error);
                        script  = string.Empty;
                        script += "closeDialogLoad()";
                        System.Web.UI.ScriptManager.RegisterStartupScript(upGrid, Page.GetType(), "CloseDialog", script, true);
                        return;
                    }
                    else
                    {
                        for (Int32 i = 0; i < dt.Rows.Count; ++i)
                        {
                            string tipo         = dt.Rows[i]["tipo"].ToString();
                            string _numero      = dt.Rows[i]["num_doc"].ToString();
                            string _codigo_hash = "";
                            string _error       = "";
                            F_Electronico.ejecutar_factura_electronica(tipo, _numero, ref _codigo_hash, ref _error);
                            if (_error.Length == 0)
                            {
                                Documents_Trans.insertar_codigo_hash(_numero, _codigo_hash, (tipo == "B" || tipo == "F") ? "V":"N");
                            }
                            else
                            {
                                msnMessage.LoadMessage(_error, UserControl.ucMessage.MessageType.Error);
                                script  = string.Empty;
                                script += "closeDialogLoad()";
                                System.Web.UI.ScriptManager.RegisterStartupScript(upGrid, Page.GetType(), "CloseDialog", script, true);
                                return;
                            }


                            ////enviar web service
                        }
                    }
                    F_Electronico._enviar_webservice_xml();
                    sbconsultar();
                    msnMessage.LoadMessage("se genero las provisiones de los saldos seleccionados", UserControl.ucMessage.MessageType.Information);
                    script  = string.Empty;
                    script += "closeDialogLoad()";
                    System.Web.UI.ScriptManager.RegisterStartupScript(upGrid, Page.GetType(), "CloseDialog", script, true);
                }
            }
            catch (Exception exc)
            {
                msnMessage.LoadMessage(exc.Message, UserControl.ucMessage.MessageType.Error);
                string script = string.Empty;
                script += "closeDialogLoad()";
                System.Web.UI.ScriptManager.RegisterStartupScript(upGrid, Page.GetType(), "CloseDialog", script, true);
            }
        }
        private void autogenerar_correlativo()
        {
            try
            {
                DataTable dtcorrelativo = (DataTable)Session[_nameSessionCorrelativo];
                dtcorrelativo.Rows.Clear();
                DataTable dt = (DataTable)(Session[_nameSessionData]);
                if (dt.Rows.Count > 0)
                {
                    Int32   _valdni = 0, _valruc = 0;
                    decimal num_bol = 0, num_fac = 0, num_nc_bol = 0, num_nc_fac = 0;
                    string  serie_bol = "", serie_fac = "";
                    foreach (GridViewRow row in gvReturns.Rows)
                    {
                        if (row.RowType == DataControlRowType.DataRow)
                        {
                            CheckBox chkrow = (row.Cells[3].FindControl("chkactivar") as CheckBox);
                            if (chkrow.Checked)
                            {
                                Label  lbldocumento = (row.Cells[0].FindControl("lbldocumento") as Label);
                                string _doc         = lbldocumento.Text;
                                if (_doc.Length == 8)
                                {
                                    if (_valdni == 0)
                                    {
                                        string _error_correlativo = Documents_Trans._correlativo_anticipo(_doc, ref serie_bol, ref serie_bol, ref num_bol, ref num_nc_bol);
                                        if (_error_correlativo.Length == 0)
                                        {
                                            dtcorrelativo.Rows.Add(_doc, serie_bol, num_bol.ToString().PadLeft(8, '0').ToString(), num_nc_bol.ToString().PadLeft(8, '0').ToString());

                                            Session[_nameSessionCorrelativo] = dtcorrelativo;
                                            num_bol    += 1;
                                            num_nc_bol += 1;
                                        }
                                        else
                                        {
                                            msnMessage.LoadMessage(_error_correlativo, UserControl.ucMessage.MessageType.Error);
                                            return;
                                        }
                                        _valdni = 1;
                                    }
                                    else
                                    {
                                        dtcorrelativo.Rows.Add(_doc, serie_bol, num_bol.ToString().PadLeft(8, '0').ToString(), num_nc_bol.ToString().PadLeft(8, '0').ToString());
                                        Session[_nameSessionCorrelativo] = dtcorrelativo;
                                        num_bol    += 1;
                                        num_nc_bol += 1;
                                    }
                                }
                                if (_doc.Length == 11)
                                {
                                    if (_valruc == 0)
                                    {
                                        string _error_correlativo = Documents_Trans._correlativo_anticipo(_doc, ref serie_fac, ref serie_fac, ref num_fac, ref num_nc_fac);
                                        if (_error_correlativo.Length == 0)
                                        {
                                            dtcorrelativo.Rows.Add(_doc, serie_fac, num_fac.ToString().PadLeft(8, '0').ToString(), num_nc_fac.ToString().PadLeft(8, '0').ToString());
                                            Session[_nameSessionCorrelativo] = dtcorrelativo;
                                            num_fac    += 1;
                                            num_nc_fac += 1;
                                        }
                                        else
                                        {
                                            msnMessage.LoadMessage(_error_correlativo, UserControl.ucMessage.MessageType.Error);
                                            return;
                                        }
                                        _valruc = 1;
                                    }
                                    else
                                    {
                                        dtcorrelativo.Rows.Add(_doc, serie_fac, num_fac.ToString().PadLeft(8, '0').ToString(), num_nc_fac.ToString().PadLeft(8, '0').ToString());
                                        Session[_nameSessionCorrelativo] = dtcorrelativo;
                                        num_fac    += 1;
                                        num_nc_fac += 1;
                                    }
                                }
                            }
                        }
                    }
                }
                else
                {
                    msnMessage.LoadMessage("No hay datos para generar correlativos", UserControl.ucMessage.MessageType.Error);
                }

                Session[_nameSessionCorrelativo] = dtcorrelativo;

                //**refrescar data
                sbactualizargrid();
                sbvisualizagrid();
            }
            catch (Exception exc)
            {
                msnMessage.LoadMessage(exc.Message, UserControl.ucMessage.MessageType.Error);
            }
        }
Пример #11
0
        protected DataTable get_dtventasemana()
        {
            //string vped = "";
            Int32     vnroboubcp   = 0;
            Int32     vnrovisa     = 0;
            Int32     vnronc       = 0;
            decimal   vmonto       = 0;
            DataTable dtsemana     = Documents_Trans.get_reportsemana(Convert.ToDateTime(txtDateStart.Text), Convert.ToDateTime(txtDateEnd.Text)).Tables[0];// (DataTable)Session[_nameSessionData];
            DataTable dtsemanacopy = new DataTable();

            dtsemanacopy = dtsemana.Clone();
            DataTable dtgrupo = get_dtgrupo(dtsemana);

            for (Int32 i = 0; i < dtgrupo.Rows.Count; ++i)
            {
                vnroboubcp = 0;
                vnrovisa   = 0;
                vnronc     = 0;
                vmonto     = 0;
                DataRow[] vfila = dtsemana.Select("ped='" + dtgrupo.Rows[i]["ped"].ToString() + "' AND MONTOFAC>0");

                string  dtv_clear  = vfila[0]["dtv_clear"].ToString();
                string  promotor   = vfila[0]["promotor"].ToString();
                string  dniruc     = vfila[0]["dniruc"].ToString();
                string  ped        = vfila[0]["ped"].ToString();
                string  bolfact    = vfila[0]["bolfact"].ToString();
                string  fechadoc   = vfila[0]["fechadoc"].ToString();
                decimal montofac   = Convert.ToDecimal(vfila[0]["montofac"].ToString());
                decimal totalpagos = Convert.ToDecimal(vfila[0]["totalpagos"].ToString());
                decimal saldofavor = 0;
                if (!(vfila[0]["totalpagos"] is DBNull))
                {
                    saldofavor = Convert.ToDecimal(vfila[0]["saldofavor"].ToString());
                }

                dtsemanacopy.Rows.Add(dtv_clear, promotor, dniruc, ped, bolfact, fechadoc, montofac);

                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["totalpagos"] = totalpagos;
                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["saldofavor"] = saldofavor;



                //forma de pago con voucher
                DataRow[] vfilanrovoubcp = dtsemana.Select("ped='" + dtgrupo.Rows[i]["ped"].ToString() + "' AND LEN(NROVOUBCP)>0");

                if (vfilanrovoubcp.Length > 0)
                {
                    if (vfilanrovoubcp.Length > 1)
                    {
                        for (Int32 ibcp = 0; ibcp < vfilanrovoubcp.Length; ++ibcp)
                        {
                            if (ibcp == 0)
                            {
                                string  nrovoubcp   = vfilanrovoubcp[ibcp]["nrovoubcp"].ToString();
                                string  fechavoubcp = vfilanrovoubcp[ibcp]["fechavoubcp"].ToString();
                                decimal montovoubcp = Convert.ToDecimal(vfilanrovoubcp[ibcp]["montovoubcp"].ToString());
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["nrovoubcp"]   = nrovoubcp;
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechavoubcp"] = fechavoubcp;
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montovoubcp"] = montovoubcp;
                            }
                            else
                            {
                                string  nrovoubcp   = vfilanrovoubcp[ibcp]["nrovoubcp"].ToString();
                                string  fechavoubcp = vfilanrovoubcp[ibcp]["fechavoubcp"].ToString();
                                decimal montovoubcp = Convert.ToDecimal(vfilanrovoubcp[ibcp]["montovoubcp"].ToString());
                                dtsemanacopy.Rows.Add();
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["nrovoubcp"]   = nrovoubcp;
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechavoubcp"] = fechavoubcp;
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montovoubcp"] = montovoubcp;
                            }
                        }
                    }
                    else
                    {
                        string  nrovoubcp   = vfilanrovoubcp[0]["nrovoubcp"].ToString();
                        string  fechavoubcp = vfilanrovoubcp[0]["fechavoubcp"].ToString();
                        decimal montovoubcp = Convert.ToDecimal(vfilanrovoubcp[0]["montovoubcp"].ToString());
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["nrovoubcp"]   = nrovoubcp;
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechavoubcp"] = fechavoubcp;
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montovoubcp"] = montovoubcp;
                    }
                }

                //forma de pago con visa
                DataRow[] vfilanrovisa = dtsemana.Select("ped='" + dtgrupo.Rows[i]["ped"].ToString() + "' AND LEN(NROVISA)>0");

                if (vfilanrovisa.Length > 0)
                {
                    if (vfilanrovisa.Length > 1)
                    {
                        for (Int32 ivisa = 0; ivisa < vfilanrovisa.Length; ++ivisa)
                        {
                        }
                    }
                    else
                    {
                        string  nrovisa   = vfilanrovisa[0]["nrovisa"].ToString();
                        string  fechavisa = vfilanrovisa[0]["fechavisa"].ToString();
                        decimal montovisa = Convert.ToDecimal(vfilanrovisa[0]["montovisa"].ToString());
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["nrovisa"]   = nrovisa;
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechavisa"] = fechavisa;
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montovisa"] = montovisa;
                    }
                }

                //forma de pago con nc
                DataRow[] vfilanronc = dtsemana.Select("ped='" + dtgrupo.Rows[i]["ped"].ToString() + "' AND LEN(NRONC)>0");

                if (vfilanronc.Length > 0)
                {
                    if (vfilanronc.Length > 1)
                    {
                        if (vfilanronc.Length <= vfilanrovoubcp.Length)
                        {
                            for (Int32 inc = 0; inc < vfilanronc.Length; ++inc)
                            {
                                string  nronc   = vfilanronc[inc]["nronc"].ToString();
                                string  fechanc = vfilanronc[inc]["fechanc"].ToString();
                                decimal montonc = Convert.ToDecimal(vfilanronc[inc]["montonc"].ToString());


                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - (inc + 1)]["nronc"]   = nronc;
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - (inc + 1)]["fechanc"] = fechanc;
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - (inc + 1)]["montonc"] = montonc;

                                //dtsemanacopy.Rows[vfilanrovoubcp.Length - (inc+1)]["nronc"] = nronc;
                                //dtsemanacopy.Rows[vfilanrovoubcp.Length - (inc + 1)]["fechanc"] = fechanc;
                                //dtsemanacopy.Rows[vfilanrovoubcp.Length - (inc + 1)]["montonc"] = montonc;
                            }
                        }
                        else
                        {
                            Int32 validanc = 0;
                            for (Int32 inc = 0; inc < vfilanronc.Length; ++inc)
                            {
                                if (validanc == 0)
                                {
                                    string  nronc   = vfilanronc[inc]["nronc"].ToString();
                                    string  fechanc = vfilanronc[inc]["fechanc"].ToString();
                                    decimal montonc = Convert.ToDecimal(vfilanronc[inc]["montonc"].ToString());


                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["nronc"]   = nronc;
                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechanc"] = fechanc;
                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montonc"] = montonc;
                                    validanc += 1;
                                }
                                else
                                {
                                    dtsemanacopy.Rows.Add();
                                    string  nronc   = vfilanronc[inc]["nronc"].ToString();
                                    string  fechanc = vfilanronc[inc]["fechanc"].ToString();
                                    decimal montonc = Convert.ToDecimal(vfilanronc[inc]["montonc"].ToString());


                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["nronc"]   = nronc;
                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechanc"] = fechanc;
                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montonc"] = montonc;
                                }
                            }
                        }
                    }
                    else
                    {
                        string  nronc   = vfilanronc[0]["nronc"].ToString();
                        string  fechanc = vfilanronc[0]["fechanc"].ToString();
                        decimal montonc = Convert.ToDecimal(vfilanronc[0]["montonc"].ToString());
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["nronc"]   = nronc;
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechanc"] = fechanc;
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montonc"] = montonc;
                    }
                }


                //forma de pago con saldoant
                DataRow[] vfilasa = dtsemana.Select("ped='" + dtgrupo.Rows[i]["ped"].ToString() + "' AND MONTOSALDOANT>0");

                if (vfilasa.Length > 0)
                {
                    if (vfilasa.Length > 1)
                    {
                        if (vfilasa.Length >= vfilanrovoubcp.Length || vfilasa.Length >= vfilanronc.Length)
                        {
                            Int32 validasa = 0;
                            for (Int32 isa = 0; isa < vfilasa.Length; ++isa)
                            {
                                if (validasa == 0)
                                {
                                    string  fechasaldoant = vfilasa[isa]["fechasaldoant"].ToString();
                                    decimal montosaldoant = Convert.ToDecimal(vfilasa[isa]["montosaldoant"].ToString());


                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechasaldoant"] = fechasaldoant;
                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montosaldoant"] = montosaldoant;
                                    validasa += 1;
                                }
                                else
                                {
                                    dtsemanacopy.Rows.Add();
                                    string  fechasaldoant = vfilasa[isa]["fechasaldoant"].ToString();
                                    decimal montosaldoant = Convert.ToDecimal(vfilasa[isa]["montosaldoant"].ToString());


                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechasaldoant"] = fechasaldoant;
                                    dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montosaldoant"] = montosaldoant;
                                }
                            }
                        }
                        else
                        {
                            for (Int32 isa = 0; isa < vfilasa.Length; ++isa)
                            {
                                string  fechasaldoant = vfilasa[isa]["fechasaldoant"].ToString();
                                decimal montosaldoant = Convert.ToDecimal(vfilasa[isa]["montosaldoant"].ToString());
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - isa]["fechasaldoant"] = fechasaldoant;
                                dtsemanacopy.Rows[dtsemanacopy.Rows.Count - isa]["montosaldoant"] = montosaldoant;
                            }
                        }
                    }
                    else
                    {
                        string  fechasaldoant = vfilasa[0]["fechasaldoant"].ToString();
                        decimal montosaldoant = Convert.ToDecimal(vfilasa[0]["montosaldoant"].ToString());
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["fechasaldoant"] = fechasaldoant;
                        dtsemanacopy.Rows[dtsemanacopy.Rows.Count - 1]["montosaldoant"] = montosaldoant;
                    }
                }
            }



            //DataTable dtsemanacopy=new DataTable();
            //dtsemanacopy = dtsemana.Clone();

            //if (dtsemana.Rows.Count > 0)
            //{
            //    for (Int32 i = 0; i< dtsemana.Rows.Count ;++i )
            //    {
            //        if (vped.Length > 0)
            //        {



            //        }
            //    }
            //}
            DataRow[] vfilatotal = dtsemana.Select("bolfact='TOTAL'");
            dtsemanacopy.Rows.Add(DBNull.Value, vfilatotal[0]["promotor"].ToString(), DBNull.Value, DBNull.Value, vfilatotal[0]["bolfact"].ToString(), DBNull.Value, Convert.ToDecimal(vfilatotal[0]["montofac"].ToString()));


            return(dtsemanacopy);
        }