private void CmdGenPag_Click(object sender, EventArgs e) { int n_idtipdoc = 0; string c_numser = ""; string c_numdoc = ""; double n_imptc = 0; double n_tasaigv = 18; double n_imppagar = 0; double n_impigv = 0; double n_impbru = 0; double n_valor = 0; int n_row = 2; double n_IdGenerado = 0; string c_dato = ""; for (n_row = 2; n_row <= (FgDeuda.Rows.Count - 1); n_row++) { if (funFunciones.NulosC(FgDeuda.GetData(n_row, 12)).ToString() == "True") { n_valor = n_valor + 1; } } if (n_valor == 0) { MessageBox.Show("¡ No ha indicado que cargos son los que se van a pagar !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); return; } c_dato = funDatos.DataTableBuscar(dtTipSoc, "c_des", "n_idtipdocfac", TxtSer.Text, "C").ToString(); n_idtipdoc = Convert.ToInt32(c_dato); c_numser = "0001"; objTipDocCom.mysConec = mysConec; c_numdoc = objTipDocCom.UltimoNumero(STU_SISTEMA.EMPRESAID, n_idtipdoc, c_numser); // ACUMULAMOS EL IMPORTE DE LO QUE SE VA A PAGAR (SOLO LO QUE ESTA CON CHECK) for (n_row = 2; n_row <= (FgDeuda.Rows.Count - 1); n_row++) { if (funFunciones.NulosC(FgDeuda.GetData(n_row, 12)).ToString() == "True") { n_valor = Convert.ToDouble(FgDeuda.GetData(n_row, 13)); n_impbru = n_impbru + n_valor; n_valor = Convert.ToDouble(FgDeuda.GetData(n_row, 14)); n_impigv = n_impigv + n_valor; n_valor = Convert.ToDouble(FgDeuda.GetData(n_row, 8)); n_imppagar = n_imppagar + n_valor; } } CN_vta_ventas objVentas = new CN_vta_ventas(); BE_VTA_VENTAS entVentas = new BE_VTA_VENTAS(); List <BE_VTA_VENTASDET> lstVentasDet = new List <BE_VTA_VENTASDET>(); entVentas.n_idemp = STU_SISTEMA.EMPRESAID; entVentas.n_id = 0; entVentas.n_anotra = STU_SISTEMA.ANOTRABAJO; entVentas.n_idmes = STU_SISTEMA.MESTRABAJO; entVentas.n_idlib = 2; entVentas.c_numreg = ""; entVentas.n_idtippro = 23; entVentas.n_idcli = Convert.ToInt32(LblIdSoc.Text); entVentas.n_idpunvencli = 0; entVentas.n_idtipdoc = n_idtipdoc; entVentas.c_numser = c_numser; entVentas.c_numdoc = c_numdoc; entVentas.d_fchreg = Convert.ToDateTime("01/" + STU_SISTEMA.MESTRABAJO.ToString() + "/" + STU_SISTEMA.ANOTRABAJO.ToString()); entVentas.d_fchdoc = DateTime.Now; entVentas.d_fchven = DateTime.Now; entVentas.n_idconpag = 1; // INDICAMOS QUE ELPAGO ES AL CONTADO entVentas.n_idmon = 115; // INDICAMOS QUE LA MONEDA ES SOLES if (TxtSer.Text == "INQUILINO") { entVentas.n_impinaf = 0; entVentas.n_impbru = n_impbru; entVentas.n_impigv = n_impigv; entVentas.n_imptotven = n_imppagar; entVentas.n_idtipven = 1; // INDICAMOS QUE LA VENTA ES AFECTA AL IGV } entVentas.n_impbru2 = 0; entVentas.n_impbru3 = 0; if (TxtSer.Text == "SOCIO") { entVentas.n_impbru = 0; entVentas.n_impinaf = n_imppagar; entVentas.n_impigv = 0; entVentas.n_imptotven = n_imppagar; entVentas.n_idtipven = 3; // INDICAMOS QUE LA VENTA ES INAAFECTA AL IGV } entVentas.n_impisc = 0; entVentas.n_impotr = 0; entVentas.n_tc = n_imptc; entVentas.n_impsal = 0; entVentas.n_idven = 0; entVentas.n_tasaigv = n_tasaigv; entVentas.c_glosa = ""; entVentas.n_oriitem = 1; entVentas.n_anulado = 1; entVentas.n_idtipdocref = 0; entVentas.n_iddocref = 0; entVentas.c_serdocref = ""; entVentas.c_numdocref = ""; entVentas.n_idtipdes = 1; entVentas.n_impdes = 0; entVentas.c_nomcli = TxtNomSoc.Text; entVentas.c_dircli = ""; entVentas.n_idpue = Convert.ToInt32(LblIdPuesto.Text); string c_cadena = ""; // CARGAMOS LOS ITEMS DE LA VENTA for (n_row = 2; n_row <= (FgDeuda.Rows.Count - 1); n_row++) { if (funFunciones.NulosC(FgDeuda.GetData(n_row, 12)).ToString() == "True") { if (n_row > 2) { c_cadena = c_cadena + ","; } c_cadena = c_cadena + FgDeuda.GetData(n_row, 15).ToString(); // ARMAMOS LA CADENA IN PARA TRAER EL DETALLE DEL DOCUMENTO } } DataTable dtDetalle = new DataTable(); objCargos.mysConec = mysConec; objCargos.Consulta2(c_cadena); if (objCargos.booOcurrioError == true) { MessageBox.Show("¡ No se pudo realizar el pago de los cargos por el siguiente motivo :" + objCargos.StrErrorMensaje + " !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); return; } dtDetalle = objCargos.dtLista; for (n_row = 0; n_row <= (dtDetalle.Rows.Count - 1); n_row++) { BE_VTA_VENTASDET entVtaDet = new BE_VTA_VENTASDET(); entVtaDet.n_idvta = 0; entVtaDet.n_iditem = Convert.ToInt32(dtDetalle.Rows[n_row]["n_idcon"]); entVtaDet.c_desusu = dtDetalle.Rows[n_row]["c_descon"].ToString(); entVtaDet.n_idunimed = 726; entVtaDet.n_canpro = 1; entVtaDet.n_preunibru = Convert.ToDouble(dtDetalle.Rows[n_row]["n_impbru"]); entVtaDet.n_impdes = 0; entVtaDet.n_preuninet = Convert.ToDouble(dtDetalle.Rows[n_row]["n_impbru"]); entVtaDet.n_imptot = Convert.ToDouble(dtDetalle.Rows[n_row]["n_imptotnet"]); lstVentasDet.Add(entVtaDet); } objVentas.mysConec = mysConec; objVentas.LstDetalle = lstVentasDet; if (objVentas.Insertar(entVentas) == false) // GRABAMOS EL DOCUMENTO DE PAGO { MessageBox.Show("¡ No se pudo realizar el pago de los cargos por el siguiente motivo :" + objVentas.StrErrorMensaje + " !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); } else { n_IdGenerado = objVentas.n_IdGenerado; int n_idCargo = 0; // ACTUALIZAMOS LOS CARGOS PAGADO for (n_row = 2; n_row <= (FgDeuda.Rows.Count - 1); n_row++) { if (funFunciones.NulosC(FgDeuda.GetData(n_row, 12)).ToString() == "True") { n_idCargo = Convert.ToInt32(FgDeuda.GetData(n_row, 15).ToString()); objCargosCab.mysConec = mysConec; //objCargosCab.ActualizarCargo(n_idCargo, n_IdGenerado); if (objCargosCab.booOcurrioError == true) { MessageBox.Show("¡ ocurrio un error :" + objCargosCab.StrErrorMensaje + " !", "", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); } } } // MOSTRAMOS LA IMPRESION DE LA VENTA objVentas.STU_SISTEMA = STU_SISTEMA; objVentas.ReportImprimirDocumento(n_IdGenerado, n_idtipdoc, false, "", false); // MOSTRAMOS NUEVAMENTE TODA LA DEUDA DEL PUESTO CmdMostrarDeuda_Click(sender, e); } }