public static void UpdateWithValidation(tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow row) { ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber); if (RowIsValid(row)) { Update(row); } }
public static void Update(tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow row) { if (row.RowState == DataRowState.Detached) { ((tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaDataTable)row.Table).Addtpu_ComprobanteDetalleDeudaRow(row); } Update(row.Table); }
/// <summary> /// Obtiene un registro de la tabla tpu_ComprobanteDetalleDeuda que luego puede ser persistido en la base de datos. /// </summary> public static tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow GetByPk(string IdComprobante, short Cuota) { tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow row = mz.erp.dataaccess.tpu_ComprobanteDetalleDeuda.GetByPk(IdComprobante, Cuota); if (row != null) { foreach (DataColumn dc in row.Table.Columns) { if (!dc.Caption.ToUpper().Equals("ROWID")) { if (row[dc] == System.DBNull.Value) { row[dc] = Util.DefaultValue(dc.DataType); } } } } return(row); }
public void Commit() { if (this._origen.Equals("CLIENTES")) { bool masNegativos = _ctaCte.CantPagosNegativos >= _ctaCte.CantPagosPositivos; ArrayList negativos = _ctaCte.GetDetallePagos(-1); ArrayList positivos = _ctaCte.GetDetallePagos(1); ItemCuentaCorriente iccSingle = null; if (masNegativos) { #region Inserta Comporbantes con Signo Negativo iccSingle = (ItemCuentaCorriente)positivos[0]; #region para q sirve? // Para que sirve???? /*if ( this._origen.Equals("CLIENTES") ) * { * tsa_ComprobantesDataset.tsa_ComprobantesRow rowComp = mz.erp.dataaccess.tsa_Comprobantes.GetByPk(iccSingle.IdComprobante); * if (rowComp == null) * rowComp = mz.erp.businessrules.tsa_Comprobantes.GetByPk(iccSingle.IdComprobante); * _dataTsa_Comprobantes.tsa_Comprobantes.ImportRow(rowComp); * } * else * { * tpu_ComprobantesDataset.tpu_ComprobantesRow rowComp = mz.erp.dataaccess.tpu_Comprobantes.GetByPk(iccSingle.IdComprobante); * if (rowComp == null) * rowComp = mz.erp.businessrules.tpu_Comprobantes.GetByPk(iccSingle.IdComprobante); * _dataTpu_Comprobantes.tpu_Comprobantes.ImportRow(rowComp); * } * // ---------------- */ #endregion // iccSingle --> Recibos... // icc --> Fact, Prefacturas.... foreach (ItemCuentaCorriente icc in negativos) { tsa_AplicacionPagosDataset.tsa_AplicacionPagosRow row = _tsa_AplicacionPagosDataSet.tsa_AplicacionPagos.Newtsa_AplicacionPagosRow(); row.IdComprobanteOrigen = icc.IdComprobante; row.CuotaOrigen = (short)icc.Cuota; row.IdComprobanteDestino = iccSingle.IdComprobante; row.IdTipoComprobanteOrigen = icc.IdTipoDeComprobante; row.Importe = icc.Pago; row.IdTipoDeComprobanteDestino = iccSingle.IdTipoDeComprobante; row.CuotaDestino = 1; row.IdEmpresa = Security.IdEmpresa; row.IdSucursal = Security.IdSucursal; row.FechaCreacion = mz.erp.businessrules.Sistema.DateTime.Now; row.IdConexionCreacion = Security.IdConexion; row.IdConexionUltimaModificacion = Security.IdConexion; row.IdReservado = 0; row.RowId = Guid.Empty; _tsa_AplicacionPagosDataSet.tsa_AplicacionPagos.Addtsa_AplicacionPagosRow(row); #region borrar! si funciona lo de abajo /* * //tsa_ComprobanteDetalleDeudaDataset.tsa_ComprobanteDetalleDeudaRow rowDeuda = mz.erp.dataaccess.tsa_ComprobanteDetalleDeuda.GetByPk(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); * tsa_ComprobanteDetalleDeudaDataset.tsa_ComprobanteDetalleDeudaRow rowDeuda = mz.erp.businessrules.tsa_ComprobanteDetalleDeuda.GetByPk(dcc.IdComprobante, Convert.ToInt16(dcc.Cuota)); * * if ( rowDeuda == null) * rowDeuda = mz.erp.businessrules.tsa_ComprobanteDetalleDeuda.GetByPk(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); * * int signo = Convert.ToInt32( tsy_TiposDeComprobantes.GetByPk(Convert.ToString(rowDeuda.IdTipoDeComprobante)).signo); * rowDeuda.Saldo = (decimal) rowDeuda.Saldo * signo; * rowDeuda.Saldo = (decimal) rowDeuda.Saldo - icc.Pago; * rowDeuda.Saldo = (decimal) rowDeuda.Saldo * signo; * * _tsa_ComprobanteDetalleDeuda.tsa_ComprobantesDetalleDeuda.ImportRow(rowDeuda); */ #endregion try { tsa_ComprobanteDetalleDeudaDataset.tsa_ComprobanteDetalleDeudaRow rowDeuda = _tsa_ComprobanteDetalleDeudaDataSet.tsa_ComprobanteDetalleDeuda.FindByIdComprobanteCuota(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); int signo = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk((string)rowDeuda["IdTipoDeComprobante"]).signo); rowDeuda["saldo"] = (decimal)rowDeuda["saldo"] * signo; rowDeuda["Saldo"] = (decimal)rowDeuda["Saldo"] - icc.Pago; rowDeuda["Saldo"] = (decimal)rowDeuda["Saldo"] * signo; } catch (Exception e) { tsa_ComprobanteDetalleDeudaDataset.tsa_ComprobanteDetalleDeudaRow rowDeuda2 = mz.erp.businessrules.tsa_ComprobanteDetalleDeuda.GetByPk(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); if (rowDeuda2 != null) { int signo = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk((string)rowDeuda2["IdTipoDeComprobante"]).signo); rowDeuda2["saldo"] = (decimal )rowDeuda2["saldo"] * signo; rowDeuda2["Saldo"] = (decimal)rowDeuda2["Saldo"] - icc.Pago; rowDeuda2["Saldo"] = (decimal)rowDeuda2["Saldo"] * signo; _tsa_ComprobanteDetalleDeudaDataSet.tsa_ComprobanteDetalleDeuda.ImportRow(rowDeuda2); } } //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); } tsa_ComprobanteDetalleDeudaDataset.tsa_ComprobanteDetalleDeudaRow rowDeudaSingle = mz.erp.dataaccess.tsa_ComprobanteDetalleDeuda.GetByPk(iccSingle.IdComprobante, Convert.ToInt16(iccSingle.Cuota)); if (rowDeudaSingle == null) { rowDeudaSingle = mz.erp.businessrules.tsa_ComprobanteDetalleDeuda.GetByPk(iccSingle.IdComprobante, Convert.ToInt16(iccSingle.Cuota)); } int signoSingle = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk(Convert.ToString(rowDeudaSingle.IdTipoDeComprobante)).signo); rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo * signoSingle; rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo - iccSingle.Pago; rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo * signoSingle; _tsa_ComprobanteDetalleDeudaDataSet.tsa_ComprobanteDetalleDeuda.ImportRow(rowDeudaSingle); #endregion } else { #region Inserta Comporbantes con Signo Positivos iccSingle = (ItemCuentaCorriente)negativos[0]; // icc --> Recibos, Notas de creditos, RET foreach (ItemCuentaCorriente icc in positivos) { tsa_AplicacionPagosDataset.tsa_AplicacionPagosRow row = _tsa_AplicacionPagosDataSet.tsa_AplicacionPagos.Newtsa_AplicacionPagosRow(); row.IdComprobanteOrigen = iccSingle.IdComprobante; row.CuotaOrigen = 1; //(short) icc.Cuota; row.IdComprobanteDestino = icc.IdComprobante; row.IdTipoComprobanteOrigen = iccSingle.IdTipoDeComprobante; row.Importe = icc.Pago; row.IdTipoDeComprobanteDestino = icc.IdTipoDeComprobante; row.CuotaDestino = (short)icc.Cuota; //1; row.IdEmpresa = Security.IdEmpresa; row.IdSucursal = Security.IdSucursal; row.FechaCreacion = mz.erp.businessrules.Sistema.DateTime.Now; row.IdConexionCreacion = Security.IdConexion; row.IdConexionUltimaModificacion = Security.IdConexion; row.IdReservado = 0; row.RowId = Guid.Empty; _tsa_AplicacionPagosDataSet.tsa_AplicacionPagos.Addtsa_AplicacionPagosRow(row); try { tsa_ComprobanteDetalleDeudaDataset.tsa_ComprobanteDetalleDeudaRow rowDeuda = _tsa_ComprobanteDetalleDeudaDataSet.tsa_ComprobanteDetalleDeuda.FindByIdComprobanteCuota(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); int signo = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk((string)rowDeuda["IdTipoDeComprobante"]).signo); rowDeuda["saldo"] = (decimal )rowDeuda["saldo"] * signo; rowDeuda["Saldo"] = (decimal)rowDeuda["Saldo"] - icc.Pago; rowDeuda["Saldo"] = (decimal)rowDeuda["Saldo"] * signo; } catch (Exception e) { tsa_ComprobanteDetalleDeudaDataset.tsa_ComprobanteDetalleDeudaRow rowDeuda2 = mz.erp.businessrules.tsa_ComprobanteDetalleDeuda.GetByPk(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); if (rowDeuda2 != null) { int signo = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk((string)rowDeuda2["IdTipoDeComprobante"]).signo); rowDeuda2["saldo"] = (decimal )rowDeuda2["saldo"] * signo; rowDeuda2["Saldo"] = (decimal)rowDeuda2["Saldo"] - icc.Pago; rowDeuda2["Saldo"] = (decimal)rowDeuda2["Saldo"] * signo; _tsa_ComprobanteDetalleDeudaDataSet.tsa_ComprobanteDetalleDeuda.ImportRow(rowDeuda2); } } } tsa_ComprobanteDetalleDeudaDataset.tsa_ComprobanteDetalleDeudaRow rowDeudaSingle = mz.erp.dataaccess.tsa_ComprobanteDetalleDeuda.GetByPk(iccSingle.IdComprobante, Convert.ToInt16(iccSingle.Cuota)); if (rowDeudaSingle == null) { rowDeudaSingle = mz.erp.businessrules.tsa_ComprobanteDetalleDeuda.GetByPk(iccSingle.IdComprobante, Convert.ToInt16(iccSingle.Cuota)); } int signoSingle = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk(Convert.ToString(rowDeudaSingle.IdTipoDeComprobante)).signo); rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo * signoSingle; rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo - iccSingle.Pago; rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo * signoSingle; _tsa_ComprobanteDetalleDeudaDataSet.tsa_ComprobanteDetalleDeuda.ImportRow(rowDeudaSingle); #endregion } } else // "PROVEEDORES" { bool masNegativos = _ctaCte.CantPagosNegativos >= _ctaCte.CantPagosPositivos; ArrayList negativos = _ctaCte.GetDetallePagos(-1); ArrayList positivos = _ctaCte.GetDetallePagos(1); ItemCuentaCorriente iccSingle = null; if (masNegativos) { #region Inserta Comporbantes con Signo Negativo iccSingle = (ItemCuentaCorriente)positivos[0]; // icc Negativos --> Pagos y notas de ?? foreach (ItemCuentaCorriente icc in negativos) { // iccSingle --> FACT de Proveedores tpu_AplicacionPagosDataset.tpu_AplicacionPagosRow row = _tpu_AplicacionPagosDataSet.tpu_AplicacionPagos.Newtpu_AplicacionPagosRow(); row.IdComprobanteOrigen = icc.IdComprobante; row.CuotaOrigen = 1; //(short) icc.Cuota; row.IdComprobanteDestino = iccSingle.IdComprobante; row.IdTipoComprobanteOrigen = icc.IdTipoDeComprobante; row.Importe = icc.Pago; row.IdTipoDeComprobanteDestino = iccSingle.IdTipoDeComprobante; row.CuotaDestino = (short)icc.Cuota;; row.IdEmpresa = Security.IdEmpresa; row.IdSucursal = Security.IdSucursal; row.FechaCreacion = mz.erp.businessrules.Sistema.DateTime.Now; row.IdConexionCreacion = Security.IdConexion; row.IdConexionUltimaModificacion = Security.IdConexion; row.IdReservado = 0; row.RowId = Guid.Empty; _tpu_AplicacionPagosDataSet.tpu_AplicacionPagos.Addtpu_AplicacionPagosRow(row); try { tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDeuda = _tpu_ComprobanteDetalleDeudaDataSet.tpu_ComprobanteDetalleDeuda.FindByIdComprobanteCuota(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); int signo = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk((string)rowDeuda["IdTipoDeComprobante"]).signo); rowDeuda["saldo"] = (decimal)rowDeuda["saldo"] * signo; rowDeuda["Saldo"] = (decimal)rowDeuda["Saldo"] - icc.Pago; rowDeuda["Saldo"] = (decimal)rowDeuda["Saldo"] * signo; rowDeuda["SaldoTemporal"] = (decimal)rowDeuda["SaldoTemporal"] * signo; rowDeuda["SaldoTemporal"] = (decimal)rowDeuda["SaldoTemporal"] - icc.Pago; rowDeuda["SaldoTemporal"] = (decimal)rowDeuda["SaldoTemporal"] * signo; } catch (Exception e) { tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDeuda2 = mz.erp.businessrules.tpu_ComprobanteDetalleDeuda.GetByPk(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); if (rowDeuda2 != null) { int signo = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk((string)rowDeuda2["IdTipoDeComprobante"]).signo); rowDeuda2["saldo"] = (decimal )rowDeuda2["saldo"] * signo; rowDeuda2["Saldo"] = (decimal)rowDeuda2["Saldo"] - icc.Pago; rowDeuda2["Saldo"] = (decimal)rowDeuda2["Saldo"] * signo; rowDeuda2["SaldoTemporal"] = (decimal)rowDeuda2["SaldoTemporal"] * signo; rowDeuda2["SaldoTemporal"] = (decimal)rowDeuda2["SaldoTemporal"] - icc.Pago; rowDeuda2["SaldoTemporal"] = (decimal)rowDeuda2["SaldoTemporal"] * signo; _tpu_ComprobanteDetalleDeudaDataSet.tpu_ComprobanteDetalleDeuda.ImportRow(rowDeuda2); } } } tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDeudaSingle = mz.erp.dataaccess.tpu_ComprobanteDetalleDeuda.GetByPk(iccSingle.IdComprobante, Convert.ToInt16(iccSingle.Cuota)); if (rowDeudaSingle == null) { rowDeudaSingle = mz.erp.businessrules.tpu_ComprobanteDetalleDeuda.GetByPk(iccSingle.IdComprobante, Convert.ToInt16(iccSingle.Cuota)); } int signoSingle = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk(Convert.ToString(rowDeudaSingle.IdTipoDeComprobante)).signo); rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo * signoSingle; rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo - iccSingle.Pago; rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo * signoSingle; rowDeudaSingle.SaldoTemporal = (decimal)rowDeudaSingle.SaldoTemporal * signoSingle; rowDeudaSingle.SaldoTemporal = (decimal)rowDeudaSingle.SaldoTemporal - iccSingle.Pago; rowDeudaSingle.SaldoTemporal = (decimal)rowDeudaSingle.SaldoTemporal * signoSingle; _tpu_ComprobanteDetalleDeudaDataSet.tpu_ComprobanteDetalleDeuda.ImportRow(rowDeudaSingle); #endregion } else { #region Inserta Comporbantes con Signo Positivos iccSingle = (ItemCuentaCorriente)negativos[0]; // icc --> FACT de Proveedores; Notas de ?? foreach (ItemCuentaCorriente icc in positivos) { // iccSingle --> Pagos a Proveedores tpu_AplicacionPagosDataset.tpu_AplicacionPagosRow row = _tpu_AplicacionPagosDataSet.tpu_AplicacionPagos.Newtpu_AplicacionPagosRow(); row.IdComprobanteOrigen = iccSingle.IdComprobante; row.CuotaOrigen = 1; row.IdComprobanteDestino = icc.IdComprobante; row.IdTipoComprobanteOrigen = iccSingle.IdTipoDeComprobante; row.Importe = icc.Pago; row.IdTipoDeComprobanteDestino = icc.IdTipoDeComprobante; row.CuotaDestino = (short)icc.Cuota; row.IdEmpresa = Security.IdEmpresa; row.IdSucursal = Security.IdSucursal; row.FechaCreacion = mz.erp.businessrules.Sistema.DateTime.Now; row.IdConexionCreacion = Security.IdConexion; row.IdConexionUltimaModificacion = Security.IdConexion; row.IdReservado = 0; row.RowId = Guid.Empty; _tpu_AplicacionPagosDataSet.tpu_AplicacionPagos.Addtpu_AplicacionPagosRow(row); try { tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDeuda = _tpu_ComprobanteDetalleDeudaDataSet.tpu_ComprobanteDetalleDeuda.FindByIdComprobanteCuota(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); int signo = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk((string)rowDeuda["IdTipoDeComprobante"]).signo); rowDeuda["saldo"] = (decimal )rowDeuda["saldo"] * signo; rowDeuda["Saldo"] = (decimal)rowDeuda["Saldo"] - icc.Pago; rowDeuda["Saldo"] = (decimal)rowDeuda["Saldo"] * signo; rowDeuda["saldoTemporal"] = (decimal )rowDeuda["saldoTemporal"] * signo; rowDeuda["saldoTemporal"] = (decimal)rowDeuda["saldoTemporal"] - icc.Pago; rowDeuda["saldoTemporal"] = (decimal)rowDeuda["saldoTemporal"] * signo; } catch (Exception e) { tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDeuda2 = mz.erp.businessrules.tpu_ComprobanteDetalleDeuda.GetByPk(icc.IdComprobante, Convert.ToInt16(icc.Cuota)); if (rowDeuda2 != null) { int signo = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk((string)rowDeuda2["IdTipoDeComprobante"]).signo); rowDeuda2["saldo"] = (decimal )rowDeuda2["saldo"] * signo; rowDeuda2["Saldo"] = (decimal)rowDeuda2["Saldo"] - icc.Pago; rowDeuda2["Saldo"] = (decimal)rowDeuda2["Saldo"] * signo; rowDeuda2["saldoTemporal"] = (decimal )rowDeuda2["saldoTemporal"] * signo; rowDeuda2["saldoTemporal"] = (decimal)rowDeuda2["saldoTemporal"] - icc.Pago; rowDeuda2["saldoTemporal"] = (decimal)rowDeuda2["saldoTemporal"] * signo; _tpu_ComprobanteDetalleDeudaDataSet.tpu_ComprobanteDetalleDeuda.ImportRow(rowDeuda2); } } } tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDeudaSingle = mz.erp.dataaccess.tpu_ComprobanteDetalleDeuda.GetByPk(iccSingle.IdComprobante, Convert.ToInt16(iccSingle.Cuota)); if (rowDeudaSingle == null) { rowDeudaSingle = mz.erp.businessrules.tpu_ComprobanteDetalleDeuda.GetByPk(iccSingle.IdComprobante, Convert.ToInt16(iccSingle.Cuota)); } int signoSingle = Convert.ToInt32(tsy_TiposDeComprobantes.GetByPk(Convert.ToString(rowDeudaSingle.IdTipoDeComprobante)).signo); rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo * signoSingle; rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo - iccSingle.Pago; rowDeudaSingle.Saldo = (decimal)rowDeudaSingle.Saldo * signoSingle; rowDeudaSingle.SaldoTemporal = (decimal)rowDeudaSingle.SaldoTemporal * signoSingle; rowDeudaSingle.SaldoTemporal = (decimal)rowDeudaSingle.SaldoTemporal - iccSingle.Pago; rowDeudaSingle.SaldoTemporal = (decimal)rowDeudaSingle.SaldoTemporal * signoSingle; _tpu_ComprobanteDetalleDeudaDataSet.tpu_ComprobanteDetalleDeuda.ImportRow(rowDeudaSingle); #endregion } } }
public bool DesimputarProveedor(ItemCuentaCorriente icc) { _data_tpu_AplicacionPagos.Clear(); _data_tpu_ComprobanteDetalleDeuda.Clear(); decimal pago = 0; if (icc.Signo == 1) { // Es un factura de Proveedores o una (nota de ?? (credito o debito) ) // por ende hay que buscarlo por el campo IdComporbanteDestino en la tabla tpu_AplicacionPagos _data_tpu_AplicacionPagos = mz.erp.businessrules.tpu_AplicacionPagos.GetList(null, short.MinValue, decimal.MinValue, icc.IdTipoDeComprobante, icc.IdComprobante, Convert.ToInt16(icc.Cuota)); foreach (tpu_AplicacionPagosDataset.tpu_AplicacionPagosRow row in _data_tpu_AplicacionPagos.tpu_AplicacionPagos.Rows) { bool getByPk = false; string IdComprobante = (string)row["IdComprobanteOrigen"]; short cuota = (short)row["CuotaOrigen"]; pago = pago + row.Importe; tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDet = _data_tpu_ComprobanteDetalleDeuda.tpu_ComprobanteDetalleDeuda.FindByIdComprobanteCuota(IdComprobante, cuota); if (rowDet == null) { rowDet = mz.erp.businessrules.tpu_ComprobanteDetalleDeuda.GetByPk(IdComprobante, cuota); getByPk = true; } if (rowDet != null) { // tener en cuenta el signo del saldo. rowDet.Saldo = rowDet.Saldo + (-1) * row.Importe; rowDet.SaldoTemporal = rowDet.SaldoTemporal + (-1) * row.Importe; if (getByPk) { _data_tpu_ComprobanteDetalleDeuda.tpu_ComprobanteDetalleDeuda.ImportRow(rowDet); } row.Delete(); } } tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDetalle1 = mz.erp.businessrules.tpu_ComprobanteDetalleDeuda.GetByPk(icc.IdComprobante, (short)icc.Cuota); //Se multiplica por 1 pues signo de saldo es positivo. Solo para consolidar los signos if (rowDetalle1 != null) { rowDetalle1.Saldo = rowDetalle1.Saldo + 1 * pago; rowDetalle1.SaldoTemporal = rowDetalle1.SaldoTemporal + 1 * pago; _data_tpu_ComprobanteDetalleDeuda.tpu_ComprobanteDetalleDeuda.ImportRow(rowDetalle1); } } else { // Es un pago a Proveedores (o una nota de ?? debito?) // Por ende hay que buscarlo por el campo IdComporbanteOrigen en la tabla tpu_AplicacionPagos. _data_tpu_AplicacionPagos = mz.erp.businessrules.tpu_AplicacionPagos.GetList(icc.IdComprobante, Convert.ToInt16(icc.Cuota), decimal.MinValue, null, null, short.MinValue); foreach (tpu_AplicacionPagosDataset.tpu_AplicacionPagosRow row in _data_tpu_AplicacionPagos.tpu_AplicacionPagos.Rows) { bool getByPk = false; string IdComprobante = (string)row["IdComprobanteDestino"]; short cuota = (short)row["CuotaDestino"]; pago = pago + row.Importe; tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDet = _data_tpu_ComprobanteDetalleDeuda.tpu_ComprobanteDetalleDeuda.FindByIdComprobanteCuota(IdComprobante, cuota); if (rowDet == null) { rowDet = mz.erp.businessrules.tpu_ComprobanteDetalleDeuda.GetByPk(IdComprobante, cuota); getByPk = true; } if (rowDet != null) { // tener en cuenta el signo del saldo. rowDet.Saldo = rowDet.Saldo + (+1) * row.Importe; rowDet.SaldoTemporal = rowDet.SaldoTemporal + (+1) * row.Importe; if (getByPk) { _data_tpu_ComprobanteDetalleDeuda.tpu_ComprobanteDetalleDeuda.ImportRow(rowDet); } row.Delete(); } } tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow rowDetalle2 = mz.erp.businessrules.tpu_ComprobanteDetalleDeuda.GetByPk(icc.IdComprobante, (short)icc.Cuota); // Se multiplica por 1 pues signo de saldo es positivo. Solo para consolidar los signos if (rowDetalle2 != null) { rowDetalle2.Saldo = rowDetalle2.Saldo + (-1) * pago; rowDetalle2.SaldoTemporal = rowDetalle2.SaldoTemporal + (-1) * pago; _data_tpu_ComprobanteDetalleDeuda.tpu_ComprobanteDetalleDeuda.ImportRow(rowDetalle2); } } // Chequeo que se haya eliminado alguna imputación return(pago > 0); }
/// <summary> /// Valida un tpu_ComprobanteDetalleDeudaRow. /// </summary> public static bool RowIsValid(tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow row) { ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber); bool isValid = true; string mensaje; if (!IdComprobanteIsValid(row.IdComprobante, out mensaje)) { row.SetColumnError("IdComprobante", mensaje); isValid = false; } if (!IdTipoDeComprobanteIsValid(row.IdTipoDeComprobante, out mensaje)) { row.SetColumnError("IdTipoDeComprobante", mensaje); isValid = false; } if (!NumeroIsValid(row.Numero, out mensaje)) { row.SetColumnError("Numero", mensaje); isValid = false; } if (!FechaEmisionIsValid(row.FechaEmision, out mensaje)) { row.SetColumnError("FechaEmision", mensaje); isValid = false; } if (!FechaVencimientoIsValid(row.FechaVencimiento, out mensaje)) { row.SetColumnError("FechaVencimiento", mensaje); isValid = false; } if (!CuotaIsValid(row.Cuota, out mensaje)) { row.SetColumnError("Cuota", mensaje); isValid = false; } if (!ImporteIsValid(row.Importe, out mensaje)) { row.SetColumnError("Importe", mensaje); isValid = false; } if (!SaldoIsValid(row.Saldo, out mensaje)) { row.SetColumnError("Saldo", mensaje); isValid = false; } if (!IdMonedaCierreIsValid(row.IdMonedaCierre, out mensaje)) { row.SetColumnError("IdMonedaCierre", mensaje); isValid = false; } if (!IdCotizacionCierreIsValid(row.IdCotizacionCierre, out mensaje)) { row.SetColumnError("IdCotizacionCierre", mensaje); isValid = false; } if (!FechaCreacionIsValid(row.FechaCreacion, out mensaje)) { row.SetColumnError("FechaCreacion", mensaje); isValid = false; } if (!IdConexionCreacionIsValid(row.IdConexionCreacion, out mensaje)) { row.SetColumnError("IdConexionCreacion", mensaje); isValid = false; } if (!UltimaModificacionIsValid(row.UltimaModificacion, out mensaje)) { row.SetColumnError("UltimaModificacion", mensaje); isValid = false; } if (!IdConexionUltimaModificacionIsValid(row.IdConexionUltimaModificacion, out mensaje)) { row.SetColumnError("IdConexionUltimaModificacion", mensaje); isValid = false; } if (!IdReservadoIsValid(row.IdReservado, out mensaje)) { row.SetColumnError("IdReservado", mensaje); isValid = false; } if (!RowIdIsValid(row.RowId, out mensaje)) { row.SetColumnError("RowId", mensaje); isValid = false; } if (!IdSucursalIsValid(row.IdSucursal, out mensaje)) { row.SetColumnError("IdSucursal", mensaje); isValid = false; } if (!IdEmpresaIsValid(row.IdEmpresa, out mensaje)) { row.SetColumnError("IdEmpresa", mensaje); isValid = false; } ; return(isValid); }
/// <summary> /// Envia los cambios del tpu_ComprobanteDetalleDeudaRow a la base de datos. /// </summary> public static void Update(tpu_ComprobanteDetalleDeudaDataset.tpu_ComprobanteDetalleDeudaRow row) { ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber); mz.erp.dataaccess.tpu_ComprobanteDetalleDeuda.Update(row); }