Пример #1
0
        public static Valores GetValores(ComprobanteDePago cdp, System.Data.DataSet parentDataset)
        {
            Valores valores = GetValores(parentDataset);

            cdp.Valores = valores;
            ArrayList _cotizaciones = new ArrayList();

            _cotizaciones = new ArrayList();
            mz.erp.businessrules.tfi_CotizacionesMonedas.GetCotizaciones(_cotizaciones, cdp.IdMonedaCierre);

            //Recupero los valores asociados al comporbante de Pago cdp
            System.Data.DataSet dataPagos = mz.erp.businessrules.tsa_ComprobanteDetalleDePagos.GetList(null, null, cdp.IdComprobante, null, decimal.MinValue);
            foreach (System.Data.DataRow row in dataPagos.Tables[0].Rows)
            {
                string IdValor = Convert.ToString(row["IdValor"]);
                Valor  valor   = new Valor(IdValor, null, null);
                //System.Data.DataRow rowValor = mz.erp.businessrules.tfi_Valores.GetByPk(IdValor);
                //Valor valor = Factory.GetValor(rowValor);
                decimal montoSinRecargo = 0;
                if (!row.IsNull("MontoSinRecargos"))
                {
                    montoSinRecargo = Convert.ToDecimal(row["MontoSinRecargos"]);
                }
                valor.IdFormaDePago    = Convert.ToString(row["IdFormaDePago"]);
                valor.MontoSinRecargos = montoSinRecargo;
                tfi_ValoresExDataset dataValoresEx = mz.erp.businessrules.data.tfi_ValoresEx.GetByPk(valor.IdValor);
                //valores.DataValoresEx.Merge(dataValoresEx);
                decimal monto = Convert.ToDecimal(row["Monto"]);
                valor.IncluyeRecargos = false;
                if (montoSinRecargo > 0)
                {
                    if (decimal.Round(monto, 2) > decimal.Round(montoSinRecargo, 2))
                    {
                        valor.IncluyeRecargos = true;
                    }
                }
                cdp.RefreshValores(valor);
            }
            return(valores);
        }
Пример #2
0
        public override void Commit()
        {
            ComprobanteDePago         cdp  = this.Parent;
            tsa_ComprobantesExDataset data = cdp.DatasetComprobante;
            Valores Valores = cdp.Valores;

            tsa_ComprobantesExDataset.tfi_ValoresDataTable      TablaValores      = data.tfi_Valores;
            tsa_ComprobantesExDataset.tsa_ComprobantesDataTable TablaComprobantes = data.tsa_Comprobantes;
            string    comprobantesdePago = Variables.GetValueString("Comprobantes.ComprobantesDePago");
            ArrayList comps = mz.erp.systemframework.Util.Parse(comprobantesdePago, ",");

            tsa_ComprobantesExDataset.tsa_ComprobantesRow rowComprobante = null;
            foreach (System.Data.DataRow row in TablaComprobantes.Rows)
            {
                if (comps.Contains(Convert.ToString(row["IdTipoDeComprobante"])))
                {
                    rowComprobante = (tsa_ComprobantesExDataset.tsa_ComprobantesRow)row;
                }
            }


            /*
             * int i = 0;
             *
             * foreach(tsa_ComprobantesExDataset.tfi_ValoresRow row in TablaValores.Rows)
             * {
             *      tsa_ComprobantesExDataset.tsa_ComprobanteDetalleDePagosRow rowPagos= data.tsa_ComprobanteDetalleDePagos.Newtsa_ComprobanteDetalleDePagosRow();
             *      if (i < Valores.MisValores.Count)
             *      {
             *              Valor valor = (Valor)Valores.MisValores[i];
             *              i++;
             *              valor.SetRowValues(rowPagos, row ,rowComprobante, _tablaDeValoresFormasDePago);
             *              data.tsa_ComprobanteDetalleDePagos.Addtsa_ComprobanteDetalleDePagosRow(rowPagos);
             *      }
             * }
             */
            /*
             * foreach(Valor valor in Valores.MisValores)
             * {
             */
            for (int i = 1; i <= Valores.MisValores.Count; i++)
            {
                if (Valores.MisValores[i - 1] != null)
                {
                    Valor valor = (Valor)Valores.MisValores[i - 1];
                    //if((_creaIdValoresNuevos)|| (!_creaIdValoresNuevos && (!valor.IsStep || valor.Agrupado)))
                    if (valor.Agrupado || valor.State.ToUpper().Equals("NEW"))
                    {
                        tsa_ComprobantesExDataset.tfi_ValoresRow row = data.tfi_Valores.FindByIdValor(valor.IdValor);
                        tsa_ComprobantesExDataset.tsa_ComprobanteDetalleDePagosRow rowPagos = data.tsa_ComprobanteDetalleDePagos.Newtsa_ComprobanteDetalleDePagosRow();
                        valor.SetRowValues(rowPagos, valor.IdValor, rowComprobante, _tablaDeValoresFormasDePago);
                        data.tsa_ComprobanteDetalleDePagos.Addtsa_ComprobanteDetalleDePagosRow(rowPagos);
                    }
                    else
                    {
                        //DataRow row  = mz.erp.businessrules.tfi_Valores.GetByPk(valor.IdValor);
                        //if(row != null)
                        //{
                        //	data.tfi_Valores.LoadDataRow(row.ItemArray,true);
                        tsa_ComprobantesExDataset.tsa_ComprobanteDetalleDePagosRow rowPagos = data.tsa_ComprobanteDetalleDePagos.Newtsa_ComprobanteDetalleDePagosRow();
                        valor.SetRowValues(rowPagos, valor.IdValor, rowComprobante, _tablaDeValoresFormasDePago);
                        data.tsa_ComprobanteDetalleDePagos.Addtsa_ComprobanteDetalleDePagosRow(rowPagos);
                        //}
                    }
                }
            }



            //}
        }