using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Extensiones; using static Extensiones.ModExtensiones; public partial class Bancos_SaldarCajaChica : ClsPaginas { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { CargaCajaChica(); } } private void CargaCajaChica() { DdlCajaChica.Items.Clear(); DdlCajaChica.DataSource = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa: UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveTipoCuenta = 1")); DdlCajaChica.DataBind(); } //private void CargaCuentas() //{ // DdlCuenta.Items.Clear(); // DdlCuenta.SelectedIndex = -1; // DdlCuenta.DataSource = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario).FiltraParametros(String.Format("CveMoneda = {0}", 1)); // DdlCuenta.DataBind(); //} private void CargaMovimientosBancarios(int CveCajaChica, int CveEmpresa) { ClsMovimientos ObjMovtos = new ClsMovimientos(); if (CveCajaChica > 0) { ObjMovtos.GetCajaChicaDetalle(CveCajaChica, CveEmpresa); GvDatos.DataSource = ObjMovtos.DtResultados.FiltraParametros("CveIE > 0", "FechaDocumento, FolioFecha"); GvDatos.DataBind(); ObjMovtos.Dispose(); } } protected void DdlCajaChica_SelectedIndexChanged(object sender, EventArgs e) { CargaMovimientosBancarios(DdlCajaChica.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa); } protected void BtnSaldar_Click(object sender, EventArgs e) { ClsBancos ObjIE = new ClsBancos(); ClsContabilidad ObjMov = new ClsContabilidad(ObjIE.IniciaTransacSQL()); int CvePrePoliza = 0; int CveIEPago = 0; int CveCajaChica = DdlCajaChica.SelectedValue.ToEntero(); Boolean TieneError = false; decimal Importe = 0; CvePrePoliza = ObjMov.AddPrePolizas("Compras/Comprobaciones", 9, 0, 0, 1, DateTime.Now, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa); foreach (GridViewRow row in GvDatos.Rows) { CheckBox chk = row.FCCheckBox("Chk"); if (chk != null && chk.Checked) { Decimal TxtImporte = row.DataKey("Saldo").ToDecimal(); Double TxtImporteIE = row.DataKey("Saldo").ToDouble(); Importe += row.DataKey("Saldo").ToDecimal(); String FolioIENew = ObjIE.GetNextFolio(CveCajaChica, 6).ToString(); CveIEPago = ObjIE.AddBancos_IE(CveCajaChica, 6, DateTime.Now, FolioIENew, DdlCajaChica.SelectedItem.ToString(), TxtImporteIE, 1, 0.0, "SALDADA POR SISTEMA", "", false, true, -1, CvePrePoliza, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa); if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, TxtImporte, DdlCajaChica.SelectedItem.ToString(), 30, "SALDADA POR SISTEMA", DateTime.Now, 0, -1, CveIE: CveIEPago, CveIEDevolucion: row.DataKey("CveIE").ToEntero(), ImporteMX: TxtImporte, CvePrePolizaOriginal: CvePrePoliza)) { TieneError = true; } } } if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, false, Importe, DdlCajaChica.SelectedItem.ToString(), 95, "SALDADA POR SISTEMA", DateTime.Now, 0, -1, CveIE: CveIEPago, ImporteMX: Importe, CvePrePolizaOriginal: CvePrePoliza)) { TieneError = true; } if( ObjMov.ValidacionPrePolizaCuadre(CvePrePoliza, 1)) { if(ObjMov.ValorPolizaDescuadre > 0) { TieneError = true; } } if (TieneError) { Alert($"Ocurrió un error al guardar el movimiento", TipoMensaje.MsgError); ObjIE.RollBack(); } else { ObjIE.Commit(); CargaMovimientosBancarios(DdlCajaChica.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa); } ObjIE.Dispose(); ObjMov.Dispose(); } }