protected void b_grabar_Click(object sender, EventArgs e) { String Sql, SqlCertif, SqlCertifMdp; SqlConnection SqlConn = fn.ConnectionSql(); String MDP, Cortesia, Local; //Se verifica que exista detalle para la session actual Sql = "select count(ncertificado) from tblCertifDet where Puesto='" + Session["idPuesto"] + "' and idPais='" + Session["idPais"] + "' and ncertificado='" + l_n_certificado.Text + "' and session='" + Session["session"] + "'"; Double cert_det = fn.EjecutarScalarDouble(Sql, SqlConn); Double total = fn.TotalCertificado(l_n_certificado.Text, Session["idPuesto"].ToString(), Session["idPais"].ToString(), SqlConn); if (Convert.ToDouble(tb_subtotalg.Text) == Math.Round(total, 2) && cert_det == Convert.ToDouble(l_servicios.Text) && cert_det > 0 && ddl_cliente.SelectedValue.Trim() != "" && ddl_cuarentena.SelectedValue.Trim() != "" && tb_fecha_tratamiento.Text.Trim().Length != 0) { //Se graba en la tblCertifMDP if (cb_cliente_contado.Checked == true) { MDP = "0"; } else { MDP = "1"; } if (cb_cortesia.Checked == true) { Cortesia = "1"; } else { Cortesia = "0"; } if (cb_local.Checked == true) { Local = "1"; } else { Local = "0"; } if (Convert.ToDouble(tb_recargo.Text) > 0) { Sql = "insert into tblCertifDet (Puesto,Ncertificado,Servicio,Cantidad,US,local,subtotal,DB,idPais) values ('" + Session["idPuesto"] + "','" + l_n_certificado.Text + "','"; Sql = Sql + fn.ValIni(Session["idPais"].ToString(), "CuentaRecargo", SqlConn) + "',1," + tb_recargo.Text + "," + tb_recargo.Text + "," + tb_recargo.Text + ",0,'" + Session["idPais"] + "')"; fn.EjecutarNonQuery(Sql, SqlConn); } SqlCertifMdp = "insert into tblCertifMDP (Puesto, NCertificado, MDP, Cantidad, Abono, SaldoNuevo, IDAbono, NEnd, idPais) values ('" + Session["idPuesto"] + "','" + l_n_certificado.Text + "',"; SqlCertifMdp = SqlCertifMdp + MDP.ToString() + "," + tb_total.Text + ",0," + tb_total.Text + ",0,0,'" + Session["idPais"] + "')"; //Se graba en la tblCertif String nplaca; if (tb_nplaca.Text.Length == 0) { nplaca = ""; } else { nplaca = tb_nplaca.Text; } String observacion; if (tb_observaciones.Text.Length == 0) { observacion = ""; } else { observacion = tb_observaciones.Text; } String fecha_trat = tb_fecha_tratamiento.Text + " " + DateTime.Now.ToLongTimeString(); String fecha = tb_fecha.Text + " " + DateTime.Now.ToLongTimeString(); SqlCertif = "insert into tblCertif (Puesto,Ncertificado,Fecha,Cambio,Cortesia,Local,Total,TotalString,Observacion,Responsable,Anulado,Remesado,Replicado,NEnd,TipoCertificado,ClienteExtra,Cliente,Placa,FechaTrat,Cuarentena,idPais) values ('"; SqlCertif = SqlCertif + Session["idPuesto"] + "','" + l_n_certificado.Text + "','" + fecha.ToString() + "'," + tb_cambio.Text + "," + Cortesia.ToString() + "," + Local + "," + tb_total.Text + ",'" + l_numlet.Text + "','" + observacion.ToString() + "','"; SqlCertif = SqlCertif + Session["login"] + "',0,0,0,1,'ASPERSIÓN TERRESTRE','" + tb_cliente.Text + "','" + ddl_cliente.SelectedValue + "','" + nplaca.ToString() + "','" + fecha_trat.ToString() + "','" + ddl_cuarentena.SelectedValue + "','" + Session["idPais"] + "')"; bool error = false; try { fn.EjecutarNonQuery(SqlCertif, SqlConn); fn.EjecutarNonQuery(SqlCertifMdp, SqlConn); } catch { error = true; } finally { if (error) { Response.Redirect("Cert_Aspersion_Terrestre.aspx?error=ok&ncertif=" + l_n_certificado.Text); } else { if (fn.Verificar_Certificado(l_n_certificado.Text, Session["idPuesto"].ToString(), Session["idPais"].ToString(), SqlConn)) { fn.Incrementar_Correlativo(Session["idPais"].ToString(), Session["idPuesto"].ToString(), "NCertificado", SqlConn); //Se registra en auditoria fn.Auditoria(Session["login"].ToString(), "Agregar Certificado", l_n_certificado.Text, Session["idPais"].ToString(), SqlConn); SqlConn.Close(); Response.Redirect("Cert_Aspersion_Terrestre.aspx?save=ok&ncertif=" + l_n_certificado.Text); } else { Response.Redirect("Cert_Aspersion_Terrestre.aspx?error=ok&ncertif=" + l_n_certificado.Text); } } } } else { if (cert_det == 0 || cert_det != Convert.ToDouble(l_servicios.Text) || Convert.ToDouble(tb_subtotalg.Text) != Math.Round(total, 2)) { Response.Redirect("Cert_Aspersion_Terrestre.aspx?error=ok"); } fn.Message(Page, "Verificar! Hay campos que son obligatorios como el CLIENTE, FECHA TRATAMIENTO y ENCARGADO DE CUARENTENA"); } }