コード例 #1
0
        public override void Commit()
        {
            ComprobanteDePago         cdp  = this.Parent;
            tsa_ComprobantesExDataset data = cdp.DatasetComprobante;
            ArrayList detalles             = cdp.CuentaCorriente.Detalle;

            System.Data.DataRow rowComprobante = null;
            tsa_ComprobantesExDataset.tsa_ComprobantesDataTable TablaComprobantes = data.tsa_Comprobantes;
            rowComprobante = data.tsa_Comprobantes.FindByIdComprobante(this.Parent.IdComprobante);
            if (rowComprobante == null)
            {
                rowComprobante = mz.erp.businessrules.tsa_Comprobantes.GetByPk(this.Parent.IdComprobante);
                data.tsa_Comprobantes.ImportRow(rowComprobante);
            }
            //Para cada item de la cuenta Corriente asociado al comprobante, toma aquellos comprobantes
            //imputados en el pago, es decir, aquellos que tienen signo = -1 (Comprobantes de Venta(Facturas, Notas de Debitos, ect...)
            //y que tienen la propiedad Pago > 0
            foreach (DetalleCuentaCorriente dcc in detalles)
            {
                if ((dcc.Pago > 0) && (dcc.Signo == -1))
                {
                    tsa_ComprobantesExDataset.tsa_AplicacionPagosRow row = data.tsa_AplicacionPagos.Newtsa_AplicacionPagosRow();
                    this.SetRowValues(row, dcc, rowComprobante);

                    //Se actualiza el el saldo del Comprobante de Pago, en base a los comprobantes imputados
                    //Por eso se debe cumplir que dcc.Pago >0 y que dcc.Signo == -1


                    //cdp.Saldo= cdp.Saldo - dcc.Pago;


                    if (cdp.ComprobanteDeVenta != null)
                    {
                        System.Data.DataRow rowComprobanteImputado = cdp.ComprobanteDeVenta.DatasetComprobante.tsa_Comprobantes.FindByIdComprobante(dcc.IdComprobante);
                        data.tsa_Comprobantes.LoadDataRow(rowComprobanteImputado.ItemArray, true);
                    }
                    else
                    {
                        System.Data.DataRow rowComprobanteImputado = data.tsa_Comprobantes.FindByIdComprobante(dcc.IdComprobante);
                        if (rowComprobanteImputado == null)
                        {
                            rowComprobanteImputado = mz.erp.businessrules.tsa_Comprobantes.GetByPk(dcc.IdComprobante);
                            data.tsa_Comprobantes.ImportRow(rowComprobanteImputado);
                        }
                    }
                    data.tsa_AplicacionPagos.Addtsa_AplicacionPagosRow(row);
                }
            }
        }
コード例 #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);
                        //}
                    }
                }
            }



            //}
        }