protected void btnAprobar_Click(object sender, EventArgs e) { string sNumInvoce = string.Empty; StringBuilder sHtml = new StringBuilder(); sHtml.Append(File.ReadAllText(Server.MapPath("invoice.html"))); StringBuilder sDataProductos = new StringBuilder(); StringBuilder sDataValorProductos = new StringBuilder(); double dTotalFacturaUsd = 0; bool bExito = false; if (ViewState["FacturaAdvance"] != null) { DataTable dtFactura = ViewState["FacturaAdvance"] as DataTable; if (dtFactura != null) { if (dtFactura.Rows.Count > 0) { DBConn oConn = new DBConn(); if (oConn.Open()) { cFactura oFactura = new cFactura(ref oConn); oFactura.NumContrato = hdd_num_contrato.Value; oFactura.Territory = "CHILE"; oFactura.DateInvoce = DateTime.Now.ToString("yyyy-MM-dd"); oFactura.DueDate = DateTime.Now.AddMonths(1).ToString("yyyy-MM-dd"); oFactura.TipoFactura = "A"; oFactura.Accion = "CREAR"; oFactura.Put(); if (string.IsNullOrEmpty(oFactura.Error)) { bExito = true; } string pCodFactura = oFactura.CodFactura; foreach (DataRow oRow in dtFactura.Rows) { string sDescripcionMarca = oRow["Marca"].ToString(); sDataProductos.Append("<div style=\"padding-top:10px;padding-bottom:10px;\">"); sDataProductos.Append("<div><font style=\"font-family:Arial; color:#000000; font-size:10pt;font-weight:bold;\">"); sDataProductos.Append(oRow["Marca"].ToString()); string pCodCategoria = null; string pCodSubCategoria = null; if (!string.IsNullOrEmpty(oRow["CodCategoria"].ToString())) { pCodCategoria = oRow["CodCategoria"].ToString(); sDataProductos.Append(" / " + oRow["Categoria"].ToString()); } if (!string.IsNullOrEmpty(oRow["CodSubCategoria"].ToString())) { pCodSubCategoria = oRow["CodSubCategoria"].ToString(); sDataProductos.Append(" / " + oRow["SubCategoria"].ToString()); } sDataProductos.Append("</font></div>"); sDataProductos.Append("</div>"); cDetalleFacturaAdvance oDetalleFacturaAdvance = new cDetalleFacturaAdvance(ref oConn); oDetalleFacturaAdvance.CodigoFactura = pCodFactura; oDetalleFacturaAdvance.CodMarca = oRow["CodMarca"].ToString(); oDetalleFacturaAdvance.CodCategoria = pCodCategoria; oDetalleFacturaAdvance.CodSubCategoria = pCodSubCategoria; oDetalleFacturaAdvance.AdvanceUsd = double.Parse(oRow["Advance USD"].ToString()).ToString(); oDetalleFacturaAdvance.Accion = "CREAR"; oDetalleFacturaAdvance.Put(); if (!string.IsNullOrEmpty(oDetalleFacturaAdvance.Error)) { bExito = false; } sDataValorProductos.Append("<div style=\"padding-top:10px;padding-bottom:10px; padding-left:10px;\">"); sDataValorProductos.Append("<div style=\"float:left;width:30px;\"><font style=\"font-family:Arial; color:#000000; font-size:10pt;\">$</font></div>"); sDataValorProductos.Append("<div style=\"text-align:right;\"><font style=\"font-family:Arial; color:#000000; font-size:10pt;\">").Append(double.Parse(oRow["Advance USD"].ToString()).ToString("#,##0.00")).Append("</font></div>"); sDataValorProductos.Append("</div>"); dTotalFacturaUsd = dTotalFacturaUsd + double.Parse(oRow["Advance USD"].ToString()); } string strNomDeudor = string.Empty; string sNomContacto = string.Empty; string sEmailContacto = string.Empty; string sDireccion = string.Empty; string sComuna = string.Empty; string sCiudad = string.Empty; cContratos oContrato = new cContratos(ref oConn); oContrato.NumContrato = hdd_num_contrato.Value; DataTable dtContrato = oContrato.Get(); if (dtContrato != null) { if (dtContrato.Rows.Count > 0) { cDeudor oDeudor = new cDeudor(ref oConn); oDeudor.NKeyDeudor = dtContrato.Rows[0]["nKey_Deudor"].ToString(); DataTable dtDeudor = oDeudor.Get(); if (dtDeudor != null) { if (dtDeudor.Rows.Count > 0) { strNomDeudor = dtDeudor.Rows[0]["snombre"].ToString(); } } dtDeudor = null; cContactosDeudor oContactosDeudor = new cContactosDeudor(ref oConn); oContactosDeudor.NKeyDeudor = dtContrato.Rows[0]["nKey_Deudor"].ToString(); oContactosDeudor.NkeyCliente = oUsuario.NKeyUsuario; DataTable dtContacto = oContactosDeudor.Get(); if (dtContacto != null) { if (dtContacto.Rows.Count > 0) { sNomContacto = dtContacto.Rows[0]["sNombre"].ToString(); sEmailContacto = dtContacto.Rows[0]["sEmail"].ToString(); } } dtContacto = null; cDirecciones oDirecciones = new cDirecciones(ref oConn); oDirecciones.NKeyDeudor = dtContrato.Rows[0]["nKey_Deudor"].ToString(); oDirecciones.NkeyCliente = oUsuario.NKeyUsuario; DataTable dtDireccion = oDirecciones.Get(); if (dtDireccion != null) { if (dtDireccion.Rows.Count > 0) { sDireccion = dtDireccion.Rows[0]["sDireccion"].ToString(); sComuna = dtDireccion.Rows[0]["sComuna"].ToString(); sCiudad = dtDireccion.Rows[0]["sCiudad"].ToString(); } } dtDireccion = null; } } dtContrato = null; //string sNumInvoce = strNomDeudor.Substring(0, 3).ToUpper(); //sNumInvoce = sNumInvoce.ToUpper(); //string sNumInvoce = "FE" + int.Parse(pCodFactura).ToString("D10"); sNumInvoce = "FE" + pCodFactura; oFactura.Total = dTotalFacturaUsd.ToString(); oFactura.Periodo = "Advance " + DateTime.Now.Year.ToString(); oFactura.NumInvoice = sNumInvoce; oFactura.Accion = "EDITAR"; oFactura.Put(); cContratos oContratos = new cContratos(ref oConn); oContratos.NumContrato = hdd_num_contrato.Value; oContratos.Accion = "EDITAR"; oContratos.Put(); sHtml.Replace("[#NUMFACTURA]", sNumInvoce); sHtml.Replace("[#NOMEMPRESA]", strNomDeudor); sHtml.Replace("[#NOMCONTACTO]", sNomContacto); sHtml.Replace("[#EMAILCONTACTO]", sEmailContacto); sHtml.Replace("[#DIRECCION]", sDireccion + (!string.IsNullOrEmpty(sComuna) ? ", " + sComuna : string.Empty)); sHtml.Replace("[#CIUDAD]", sCiudad); sHtml.Replace("[#PAIS]", ""); sHtml.Replace("[#FECHA]", DateTime.Now.ToString("d-MMM-yy", CultureInfo.CreateSpecificCulture("en-US"))); sHtml.Replace("[#NUMCONTRATO]", hdd_no_contrato.Value); sHtml.Replace("[#PERIODOQ]", "Advance " + DateTime.Now.Year.ToString()); sHtml.Replace("[#PROPERTY]", ""); sHtml.Replace("[#TERRITORIO]", "CHILE"); sHtml.Replace("[#DETALLEPRODUCTOS]", sDataProductos.ToString()); sHtml.Replace("[#DETALLEVALORPRODUCTOS]", sDataValorProductos.ToString()); sHtml.Replace("[#DUEDATE]", DateTime.Now.AddMonths(1).ToString("d-MMM-yy", CultureInfo.CreateSpecificCulture("en-US"))); //sHtml.Replace("[#TOTAL]", double.Parse(dTotalFacturaUsd.ToString()).ToString("#,##0.00")); sHtml.Replace("[#TOTAL]", double.Parse(dTotalFacturaUsd.ToString()).ToString("N0")); if (!Directory.Exists(Server.MapPath("Facturas_Advance/") + hdd_no_contrato.Value + "/")) { Directory.CreateDirectory(Server.MapPath("Facturas_Advance/") + hdd_no_contrato.Value + "/"); } string sFileHtml = Server.MapPath("Facturas_Advance/") + hdd_no_contrato.Value + "/" + sNumInvoce + ".html"; File.WriteAllText(sFileHtml, sHtml.ToString(), Encoding.UTF8); } oConn.Close(); } } dtFactura = null; if (bExito) { idGrilla.Visible = false; idBtnSave.Visible = false; DBConn oConn = new DBConn(); if (oConn.Open()) { string sNoContrato = string.Empty; cContratos oContratos = new cContratos(ref oConn); oContratos.NumContrato = hdd_num_contrato.Value; DataTable dtContrato = oContratos.Get(); if (dtContrato != null) { if (dtContrato.Rows.Count > 0) { sNoContrato = dtContrato.Rows[0]["no_contrato"].ToString(); } } dtContrato = null; cLogEventos oLogEventos = new cLogEventos(ref oConn); oLogEventos.AccionLog = "APROBAR POR DETALLE PRE-FACTURA ADVANCE"; oLogEventos.CodCanal = "2"; oLogEventos.CodFlujo = "4"; oLogEventos.NomFlujo = "FACTURACION ADVANCE"; oLogEventos.NumContrato = hdd_num_contrato.Value; oLogEventos.NoContrato = sNoContrato; oLogEventos.PeriodoLog = "Advance " + DateTime.Now.Year.ToString(); //oLogEventos.RutDeudor = oUsuario.RutLicenciatario; oLogEventos.CodUser = oUsuario.CodUsuario; oLogEventos.RutUser = oUsuario.RutUsuario; oLogEventos.NomUser = oUsuario.Nombres; oLogEventos.ObsLog = "Se ha autorizado correctamente la Factura Advance " + sNumInvoce; oLogEventos.IpLog = oWeb.GetIpUsuario(); oLogEventos.Accion = "CREAR"; oLogEventos.Put(); } oConn.Close(); StringBuilder js = new StringBuilder(); js.Append("function LgRespuesta() {"); js.Append(" window.radalert('La factura ha sido emitida con éxito.', 330, 210); "); js.Append(" Sys.Application.remove_load(LgRespuesta); "); js.Append("};"); js.Append("Sys.Application.add_load(LgRespuesta);"); Page.ClientScript.RegisterStartupScript(this.GetType(), "radalert", js.ToString(), true); } } }
protected void getDataMinimiGaranty() { MinimoGarantizado oMinimoGarantizado = new MinimoGarantizado(); oMinimoGarantizado.ViewClient = true; oMinimoGarantizado.Periodo = cmbox_periodo_minimo.SelectedValue; oMinimoGarantizado.getMakeTable(); DBConn oConn = new DBConn(); if (oConn.Open()) { DateTime dFechaIni = DateTime.Parse(cmbox_periodo_minimo.SelectedValue.Substring(0, 10)); DateTime dFechaFin = DateTime.Parse(cmbox_periodo_minimo.SelectedValue.Substring(13, 10)); cMinimoContrato oMinimoContrato = new cMinimoContrato(ref oConn); oMinimoContrato.NkeyDeudor = cmbox_licenciatario.SelectedValue; oMinimoContrato.NumContrato = cmbox_contrato.SelectedValue; oMinimoContrato.FechaInicio = dFechaIni.ToString("yyyyMMdd"); oMinimoContrato.FechaFinal = dFechaFin.ToString("yyyyMMdd"); DataTable dtMinimo = oMinimoContrato.Get(); if (dtMinimo != null) { foreach (DataRow oRow in dtMinimo.Rows) { int iYearInicio = DateTime.Parse(cmbox_periodo_minimo.SelectedValue.Substring(0, 10)).Year; int iYearFinal = DateTime.Parse(cmbox_periodo_minimo.SelectedValue.Substring(13, 10)).Year; cFactura oFactura = new cFactura(ref oConn); oFactura.NumContrato = (!string.IsNullOrEmpty(cmbox_contrato.SelectedValue) ? cmbox_contrato.SelectedValue : oRow["num_contrato"].ToString()); oFactura.TipoFactura = "T"; oFactura.PeriodoAno = (iYearInicio.ToString() == iYearFinal.ToString() ? "'" + iYearInicio.ToString() + "'" : "'" + iYearInicio.ToString() + "','" + iYearFinal.ToString() + "'"); DataTable dtFactura = oFactura.GetForMinimo(); if (dtFactura != null) { if (dtFactura.Rows.Count > 0) { double iTotal = 0; oMinimoGarantizado.Licenciatario = oRow["licenciatario"].ToString(); oMinimoGarantizado.NoContrato = oRow["contrato"].ToString(); oMinimoGarantizado.Marca = oRow["marca"].ToString(); oMinimoGarantizado.Categoria = oRow["categoria"].ToString(); oMinimoGarantizado.SubCategoria = oRow["subcategoria"].ToString(); oMinimoGarantizado.MinimoUsd = oRow["minimo"].ToString(); oMinimoGarantizado.Advance = "0"; oMinimoGarantizado.PeriodoUno = "0"; oMinimoGarantizado.PeriodoDos = "0"; oMinimoGarantizado.PeriodoTres = "0"; oMinimoGarantizado.PeriodoCuatro = "0"; foreach (DataRow oRowFact in dtFactura.Rows) { cDetalleFacturaAdvance oDetalleFacturaAdvance = new cDetalleFacturaAdvance(ref oConn); oDetalleFacturaAdvance.CodigoFactura = oRowFact["codigo_factura"].ToString(); oDetalleFacturaAdvance.CodMarca = oRow["cod_marca"].ToString(); oDetalleFacturaAdvance.CodCategoria = oRow["cod_categoria"].ToString(); oDetalleFacturaAdvance.CodSubCategoria = oRow["cod_subcategoria"].ToString(); DataTable dtDetalleFactAdvance = oDetalleFacturaAdvance.GetByMinimo(); if (dtDetalleFactAdvance != null) { if (dtDetalleFactAdvance.Rows.Count > 0) { oMinimoGarantizado.Advance = dtDetalleFactAdvance.Rows[0]["advance_usd"].ToString(); } } dtDetalleFactAdvance = null; cDetalleFactura DetalleFactura = new cDetalleFactura(ref oConn); DetalleFactura.CodigoFactura = oRowFact["codigo_factura"].ToString(); DetalleFactura.CodMarca = oRow["cod_marca"].ToString(); DetalleFactura.CodCategoria = oRow["cod_categoria"].ToString(); DetalleFactura.CodSubcategoria = oRow["cod_subcategoria"].ToString(); DataTable dtDetalleFactura = DetalleFactura.GetByMinimo(); if (dtDetalleFactura != null) { if (dtDetalleFactura.Rows.Count > 0) { Web oWeb = new Web(); DateTime fecha_inicial = DateTime.Parse(cmbox_periodo_minimo.SelectedValue.Substring(0, 10)); DateTime fecha_final = DateTime.Parse(cmbox_periodo_minimo.SelectedValue.Substring(13)); int lngCantMes = Math.Abs((fecha_final.Month - fecha_inicial.Month) + 12 * (fecha_final.Year - fecha_inicial.Year)) + 1; int lngTrimestres = lngCantMes / 3; if (lngTrimestres > 0) { DateTime dMonthForQ = fecha_inicial; for (int i = 0; i < lngTrimestres; i++) { dMonthForQ = dMonthForQ.AddMonths(2); if (oRowFact["periodo"].ToString() == (oWeb.getPeriodoByNumMonth(dMonthForQ.Month) + "/" + dMonthForQ.Year.ToString())) { if (i == 0) { oMinimoGarantizado.PeriodoUno = (double.Parse(dtDetalleFactura.Rows[0]["monto_royalty_usd"].ToString()) - double.Parse(dtDetalleFactura.Rows[0]["saldo_advance_usd"].ToString())).ToString(); } //oMinimoGarantizado.PeriodoUno = dtDetalleFactura.Rows[0]["factura_usd"].ToString(); else if (i == 1) { oMinimoGarantizado.PeriodoDos = (double.Parse(dtDetalleFactura.Rows[0]["monto_royalty_usd"].ToString()) - double.Parse(dtDetalleFactura.Rows[0]["saldo_advance_usd"].ToString())).ToString(); } else if (i == 2) { oMinimoGarantizado.PeriodoTres = (double.Parse(dtDetalleFactura.Rows[0]["monto_royalty_usd"].ToString()) - double.Parse(dtDetalleFactura.Rows[0]["saldo_advance_usd"].ToString())).ToString(); } else if (i == 3) { oMinimoGarantizado.PeriodoCuatro = (double.Parse(dtDetalleFactura.Rows[0]["monto_royalty_usd"].ToString()) - double.Parse(dtDetalleFactura.Rows[0]["saldo_advance_usd"].ToString())).ToString(); } } dMonthForQ = dMonthForQ.AddMonths(1); } } else { oMinimoGarantizado.PeriodoUno = (double.Parse(dtDetalleFactura.Rows[0]["monto_royalty_usd"].ToString()) - double.Parse(dtDetalleFactura.Rows[0]["saldo_advance_usd"].ToString())).ToString(); } } } dtDetalleFactura = null; } iTotal = double.Parse(oMinimoGarantizado.MinimoUsd) - (!string.IsNullOrEmpty(oMinimoGarantizado.Advance) ? double.Parse(oMinimoGarantizado.Advance) : 0); iTotal = iTotal - (!string.IsNullOrEmpty(oMinimoGarantizado.PeriodoUno) ? double.Parse(oMinimoGarantizado.PeriodoUno) : 0); iTotal = iTotal - (!string.IsNullOrEmpty(oMinimoGarantizado.PeriodoDos) ? double.Parse(oMinimoGarantizado.PeriodoDos) : 0); iTotal = iTotal - (!string.IsNullOrEmpty(oMinimoGarantizado.PeriodoTres) ? double.Parse(oMinimoGarantizado.PeriodoTres) : 0); iTotal = iTotal - (!string.IsNullOrEmpty(oMinimoGarantizado.PeriodoCuatro) ? double.Parse(oMinimoGarantizado.PeriodoCuatro) : 0); if (iTotal < 0) { iTotal = 0; } oMinimoGarantizado.Saldo = iTotal.ToString(); oMinimoGarantizado.AddRow(); } } dtFactura = null; } } dtMinimo = null; } oConn.Close(); DataTable dtMinimoGarantizado = oMinimoGarantizado.Get(); RadGrid oGridMinimo = new RadGrid(); oGridMinimo.ShowStatusBar = true; oGridMinimo.ShowFooter = true; oGridMinimo.AutoGenerateColumns = false; oGridMinimo.Skin = "Sitefinity"; //oGridMinimo.ItemDataBound += oGridMinimo_ItemDataBound; oGridMinimo.MasterTableView.AutoGenerateColumns = false; oGridMinimo.MasterTableView.ShowHeader = true; oGridMinimo.MasterTableView.ShowFooter = true; oGridMinimo.MasterTableView.TableLayout = GridTableLayout.Fixed; //oGridMinimo.MasterTableView.EditMode = GridEditMode.EditForms; oGridMinimo.MasterTableView.ShowHeadersWhenNoRecords = true; GridBoundColumn oGridBoundColumn; oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Licenciatario"; oGridBoundColumn.HeaderText = "Licenciatario"; oGridBoundColumn.UniqueName = "Licenciatario"; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Contrato"; oGridBoundColumn.HeaderText = "Contrato"; oGridBoundColumn.UniqueName = "Contrato"; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Marca"; oGridBoundColumn.HeaderText = "Marca"; oGridBoundColumn.UniqueName = "Marca"; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Categoría"; oGridBoundColumn.HeaderText = "Categoría"; oGridBoundColumn.UniqueName = "Categoría"; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Subcategoría"; oGridBoundColumn.HeaderText = "Subcategoría"; oGridBoundColumn.UniqueName = "Subcategoría"; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Mínimo Garantizado USD"; oGridBoundColumn.HeaderText = "Mínimo Garantizado USD"; oGridBoundColumn.UniqueName = "Mínimo Garantizado USD"; oGridBoundColumn.DataFormatString = "{0:N0}"; oGridBoundColumn.FooterAggregateFormatString = "{0:N0}"; oGridBoundColumn.Aggregate = GridAggregateFunction.Sum; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Factura Advance"; oGridBoundColumn.HeaderText = "Factura Advance"; oGridBoundColumn.UniqueName = "Factura Advance"; oGridBoundColumn.DataFormatString = "{0:N}"; oGridBoundColumn.FooterAggregateFormatString = "{0:N0}"; oGridBoundColumn.Aggregate = GridAggregateFunction.Sum; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); DateTime fechainicial = DateTime.Parse(cmbox_periodo_minimo.SelectedValue.Substring(0, 10)); DateTime fechafinal = DateTime.Parse(cmbox_periodo_minimo.SelectedValue.Substring(13)); int iCantMes = Math.Abs((fechafinal.Month - fechainicial.Month) + 12 * (fechafinal.Year - fechainicial.Year)) + 1; int iTrimestres = iCantMes / 3; if (iTrimestres > 0) { DateTime dMonthForQ = fechainicial; for (int i = 0; i < iTrimestres; i++) { dMonthForQ = dMonthForQ.AddMonths(2); oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Factura " + oWeb.getPeriodoByNumMonth(dMonthForQ.Month) + "/" + dMonthForQ.Year.ToString(); oGridBoundColumn.HeaderText = "Factura " + oWeb.getPeriodoByNumMonth(dMonthForQ.Month) + "/" + dMonthForQ.Year.ToString(); oGridBoundColumn.UniqueName = "Factura " + oWeb.getPeriodoByNumMonth(dMonthForQ.Month) + "/" + dMonthForQ.Year.ToString(); oGridBoundColumn.DataFormatString = "{0:N}"; oGridBoundColumn.FooterAggregateFormatString = "{0:N0}"; oGridBoundColumn.Aggregate = GridAggregateFunction.Sum; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); dMonthForQ = dMonthForQ.AddMonths(1); } } else { DateTime iMonth = fechainicial.AddMonths(2); oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Factura " + oWeb.getPeriodoByNumMonth(iMonth.Month) + "/" + iMonth.Year.ToString(); oGridBoundColumn.HeaderText = "Factura " + oWeb.getPeriodoByNumMonth(iMonth.Month) + "/" + iMonth.Year.ToString(); oGridBoundColumn.UniqueName = "Factura " + oWeb.getPeriodoByNumMonth(iMonth.Month) + "/" + iMonth.Year.ToString(); oGridBoundColumn.DataFormatString = "{0:N}"; oGridBoundColumn.FooterAggregateFormatString = "{0:N0}"; oGridBoundColumn.Aggregate = GridAggregateFunction.Sum; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); } oGridBoundColumn = new GridBoundColumn(); oGridBoundColumn.DataField = "Saldo"; oGridBoundColumn.HeaderText = "Saldo"; oGridBoundColumn.UniqueName = "Saldo"; oGridBoundColumn.DataFormatString = "{0:N0}"; oGridBoundColumn.FooterAggregateFormatString = "{0:N0}"; oGridBoundColumn.Aggregate = GridAggregateFunction.Sum; oGridMinimo.MasterTableView.Columns.Add(oGridBoundColumn); oGridMinimo.DataSource = dtMinimoGarantizado; oGridMinimo.Rebind(); idGrilla.Visible = true; idGrilla.Controls.Add(oGridMinimo); }
protected void RadGrid1_ItemCommand(object source, Telerik.Web.UI.GridCommandEventArgs e) { switch (e.CommandName) { case "cmdDelete": DBConn oConn = new DBConn(); if (oConn.Open()) { string pCodFactura = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["codigo_factura"].ToString(); string pNumContrato = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["num_contrato"].ToString(); string pTipoFactura = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["tipo_factura"].ToString(); if (pTipoFactura == "A") { cDetalleFacturaAdvance oDetalleFacturaAdvance = new cDetalleFacturaAdvance(ref oConn); oDetalleFacturaAdvance.CodigoFactura = pCodFactura; oDetalleFacturaAdvance.Accion = "ELIMINAR"; oDetalleFacturaAdvance.Put(); cContratos oContratos = new cContratos(ref oConn); oContratos.NumContrato = pNumContrato; oContratos.Accion = "ELIMINAADVANCE"; oContratos.Put(); } else if (pTipoFactura == "Q") { cDetalleFactura oDetalleFactura = new cDetalleFactura(ref oConn); oDetalleFactura.CodigoFactura = pCodFactura; DataTable dt = oDetalleFactura.Get(); if (dt != null) { if (dt.Rows.Count > 0) { foreach (DataRow oRow in dt.Rows) { if (!string.IsNullOrEmpty(oRow["saldo_advance_usd"].ToString())) { cAdvanceContrato oAdvanceContrato = new cAdvanceContrato(ref oConn); oAdvanceContrato.NumContrato = pNumContrato; oAdvanceContrato.CodMarca = oRow["cod_marca"].ToString(); oAdvanceContrato.CodCategoria = oRow["cod_categoria"].ToString(); oAdvanceContrato.CodSubCategoria = oRow["cod_subcategoria"].ToString(); DataTable dtAdvance = oAdvanceContrato.Get(); if (dtAdvance != null) { if (dtAdvance.Rows.Count > 0) { oAdvanceContrato.Saldo = (!string.IsNullOrEmpty(dtAdvance.Rows[0]["saldo"].ToString()) ? (double.Parse(dtAdvance.Rows[0]["saldo"].ToString()) + double.Parse(oRow["saldo_advance_usd"].ToString())).ToString() : oRow["saldo_advance_usd"].ToString()); oAdvanceContrato.Accion = "EDITAR"; oAdvanceContrato.Put(); } } dtAdvance = null; } } } } dt = null; oDetalleFactura.Accion = "ELIMINAR"; oDetalleFactura.Put(); cReporteVenta oReporteVenta = new cReporteVenta(ref oConn); oReporteVenta.CodigoFactura = pCodFactura; oReporteVenta.Accion = "ELIMINAFACTURA"; oReporteVenta.Put(); } else if (pTipoFactura == "S") { cDetFactShortfall oDetFactShortfall = new cDetFactShortfall(ref oConn); oDetFactShortfall.CodigoFactura = pCodFactura; oDetFactShortfall.Accion = "ELIMINAR"; oDetFactShortfall.Put(); cMinimoContrato oMinimoContrato = new cMinimoContrato(ref oConn); oMinimoContrato.CodFactShortFall = pCodFactura; oMinimoContrato.Accion = "ELIMINAFACTURA"; oMinimoContrato.Put(); } cFactura oFactura = new cFactura(ref oConn); oFactura.CodFactura = pCodFactura; oFactura.Accion = "ELIMINAR"; oFactura.Put(); cLogEventos oLogEventos = new cLogEventos(ref oConn); oLogEventos.AccionLog = "ELIMINACION DE FACTURA DE " + (pTipoFactura == "A" ? "ADVANCE" : (pTipoFactura == "Q" ? "PERIODO" : "SHORTFALL")) + " FE" + pCodFactura; oLogEventos.CodCanal = "2"; oLogEventos.CodFlujo = "9"; oLogEventos.NomFlujo = "ELIMINACION DE FACTURA"; oLogEventos.NumContrato = pNumContrato; oLogEventos.CodUser = oUsuario.CodUsuario; oLogEventos.RutUser = oUsuario.RutUsuario; oLogEventos.NomUser = oUsuario.Nombres; oLogEventos.IpLog = oWeb.GetIpUsuario(); oLogEventos.Accion = "CREAR"; oLogEventos.Put(); } oConn.Close(); break; } RadGrid1.Rebind(); }