public bool InsertarFicha(Semestre sem, Grupo grupo, Proyecto p, Alumno Aldba, Alumno AlPro, Alumno alJefe, DescrpProyecto des, TipoInnovacion ti, Docente docPEP, Docente docGPI, TipoInnovacionNegocio tin) { bool estado = false; if (p.Nombre.Length > 0) { //ingreso a tabla semestre string insert1 = "insert into Semestre(numero,año,fk_idTSem) values(" + sem.Numero + "," + sem.Año + "," + sem.Fk_idTsem + ");"; ejecutar(insert1); //ingreso a tabla grupo string insert2 = "insert into grupo(nombre,estado) values('" + grupo.Nombre + "'," + 1 + ");"; ejecutar(insert2); //ingreso a tabla proyecto string insert3 = "insert into Proyecto(nombre,fk_idDe,fk_idTneg,fk_idSuc,fk_idSem,fk_idGru,fk_idTin)" + " values('" + p.Nombre + "'," + p.Fk_idDe + "," + p.Fk_idTneg + "," + p.Fk_idSuc + ",(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + "),(select idGru from grupo where nombre='" + grupo.Nombre + "')," + tin.IdTin + ");"; ejecutar(insert3); //ingresu a alumnos //INGRESO DBA string insertDBA = "insert into alumno values('" + Aldba.RutAlumn + "','" + Aldba.Nombre + "'," + Aldba.DueñoIdea + ",'" + Aldba.Correo + "'," + Aldba.Estado + "," + Aldba.Fk_idCar + "," + Aldba.Fk_idRol + ",(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + "),'" + Aldba.RutAlumn + "');"; ejecutar(insertDBA); //INGRESO PROGRAMADOR string insertpro = "insert into alumno values('" + AlPro.RutAlumn + "','" + AlPro.Nombre + "'," + AlPro.DueñoIdea + ",'" + AlPro.Correo + "'," + AlPro.Estado + "," + AlPro.Fk_idCar + "," + AlPro.Fk_idRol + ",(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + "),'" + AlPro.RutAlumn + "');"; ejecutar(insertpro); //INGRESO JEFE string insertJefe = "insert into alumno values('" + alJefe.RutAlumn + "','" + alJefe.Nombre + "'," + alJefe.DueñoIdea + ",'" + alJefe.Correo + "'," + alJefe.Estado + "," + alJefe.Fk_idCar + "," + alJefe.Fk_idRol + ",(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + "),'" + alJefe.RutAlumn + "');"; ejecutar(insertJefe); //INGRESO TABLA ALUMNO-GRUPO string insertAlumnoGrupoDBA = "insert into alumno_grupo values('" + Aldba.RutAlumn + "',(select idGru from grupo where nombre='" + grupo.Nombre + "'));"; ejecutar(insertAlumnoGrupoDBA); string insertAlumnoGrupoPROGRA = "insert into alumno_grupo values('" + AlPro.RutAlumn + "',(select idGru from grupo where nombre='" + grupo.Nombre + "'));"; ejecutar(insertAlumnoGrupoPROGRA); string insertAlumnoGrupoJEFE = "insert into alumno_grupo values('" + alJefe.RutAlumn + "',(select idGru from grupo where nombre='" + grupo.Nombre + "'));"; ejecutar(insertAlumnoGrupoJEFE); //INGRESO DESCRIPCION PROYECTO SqlCommand cmd = new SqlCommand(); cmd.CommandText = "insert into descrpProyecto(link,identificacion,origen,afectados,justificacion,propuesta_solucion,diagrama_func_,estado,fk_folio) values('" + des.Link + "','" + des.Identificacion + "','" + des.Origen + "','" + des.Afectados + "','" + des.Justificacion + "','" + des.Propuesta_solucion + "',@diagrama,1,(select folio from proyecto where nombre='" + p.Nombre + "' and fk_idDe=" + p.Fk_idDe + " and fk_idTNeg=" + p.Fk_idTneg + " and fk_idSuc=" + p.Fk_idSuc + " and fk_idSem=(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + ") and fk_idGru=(select idGru from grupo where nombre='" + grupo.Nombre + "')));"; cmd.Parameters.Add("@diagrama", SqlDbType.Image).Value = des.Diagrama_func; cmd.CommandType = CommandType.Text; cmd.Connection = c.con; c.con.Open(); cmd.ExecuteNonQuery(); c.con.Close(); //INGRESO TIPO INNOVACION if (ti.IdTinno >= 1 && ti.IdTinno <= 7) { if (ti.IdTinno == 6) { string inserNuevoTipoInnovacion = "insert into Tecnologias (nombre_tecnologia,fk_idTinno) values('" + ti.Tipo + "'," + ti.IdTinno + ");"; ejecutar(inserNuevoTipoInnovacion); string insertTp = "insert into detInnovacion (fk_folio,fk_idTinno) values((select folio from proyecto where nombre='" + p.Nombre + "' and fk_idDe=" + p.Fk_idDe + " and fk_idTNeg=" + p.Fk_idTneg + " and fk_idSuc=" + p.Fk_idSuc + " and fk_idSem=(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + ") and fk_idGru=(select idGru from grupo where nombre='" + grupo.Nombre + "')),(SELECT TipoInnovacion.idTInno FROM Tecnologias INNER JOIN TipoInnovacion ON Tecnologias.fk_idTInno = TipoInnovacion.idTInno where Tecnologias.nombre_tecnologia='" + ti.Tipo + "'));"; ejecutar(insertTp); } else { string insertTp = "insert into detInnovacion (fk_folio,fk_idTinno) values((select folio from proyecto where nombre='" + p.Nombre + "' and fk_idDe=" + p.Fk_idDe + " and fk_idTNeg=" + p.Fk_idTneg + " and fk_idSuc=" + p.Fk_idSuc + " and fk_idSem=(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + ") and fk_idGru=(select idGru from grupo where nombre='" + grupo.Nombre + "'))," + ti.IdTinno + ");"; ejecutar(insertTp); } } //ingreso Definiciones string insertdefproc = "insert into Definiciones(definicion) values('" + des.Definiciones + "')"; ejecutar(insertdefproc); //ingreso a DefProyecto string insertDefProyecto = "insert into defproyecto(fk_folio,fk_idDef) values((select folio from proyecto where nombre='" + p.Nombre + "' and fk_idDe=" + p.Fk_idDe + " and fk_idTNeg=" + p.Fk_idTneg + " and fk_idSuc=" + p.Fk_idSuc + " and fk_idSem=(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + ") and fk_idGru=(select idGru from grupo where nombre='" + grupo.Nombre + "')),(select idDef from definiciones where definicion='" + des.Definiciones + "'));"; ejecutar(insertDefProyecto); //INGRESO DOCENTES //INGRESO PEP string insertPEP = "insert into DocentesPro(Docente_rutDoc,Proyecto_folio) values('" + docPEP.RutDoc + "',(select folio from proyecto where nombre='" + p.Nombre + "' and fk_idDe=" + p.Fk_idDe + " and fk_idTNeg=" + p.Fk_idTneg + " and fk_idSuc=" + p.Fk_idSuc + " and fk_idSem=(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + ") and fk_idGru=(select idGru from grupo where nombre='" + grupo.Nombre + "')))"; ejecutar(insertPEP); //INGRESO GPI string insertGPI = "insert into DocentesPro(Docente_rutDoc,Proyecto_folio) values('" + docGPI.RutDoc + "',(select folio from proyecto where nombre='" + p.Nombre + "' and fk_idDe=" + p.Fk_idDe + " and fk_idTNeg=" + p.Fk_idTneg + " and fk_idSuc=" + p.Fk_idSuc + " and fk_idSem=(select idSem from semestre where numero=" + sem.Numero + " and año=" + sem.Año + ") and fk_idGru=(select idGru from grupo where nombre='" + grupo.Nombre + "')))"; ejecutar(insertGPI); estado = true; } return(estado); }
protected void btnGuardar_Click(object sender, EventArgs e) { try { Datos datos = new Datos(); //toma de datos de semestre Semestre s = new Semestre(); s.Numero = int.Parse(txtNroSemestre.Text); s.Año = int.Parse(txtAñoSemestre.Text); s.Fk_idTsem = int.Parse(ddlTipoSemestre.SelectedValue); //Toma de datos docentes Docente docPEP = new Docente(); docPEP.RutDoc = ddlDocentePEP.SelectedValue; Docente docGPI = new Docente(); docGPI.RutDoc = ddlDocenteGPI.SelectedValue; //toma de datos de grupo Grupo gp = new Grupo(); gp.Nombre = txtNombreGrupo.Text; gp.Estado = 1; //toma de datos alumnoDBA Alumno aldba = new Alumno(); Alumno alprogra = new Alumno(); Alumno aljefe = new Alumno(); aldba.RutAlumn = txtRutDBA.Text; aldba.Nombre = txtNombreDBA.Text; aldba.Correo = "AA"; aldba.Estado = 1; aldba.Fk_idCar = int.Parse(ddlCarrera.SelectedValue); aldba.Fk_idRol = 1; //para el valor fk_idsem se agrega desde la query //para el campof fk_idUs se agrega desde la query //INGRESO ALUMNO PROGRA alprogra.RutAlumn = txtRutProgra.Text; alprogra.Nombre = txtNomProgra.Text; alprogra.Correo = "AA"; alprogra.Estado = 1; alprogra.Fk_idCar = int.Parse(ddlCarrera.SelectedValue); alprogra.Fk_idRol = 3; //para el valor fk_idsem se agrega desde la query //para el campof fk_idUs se agrega desde la query //INGRESO ALUMNO JEFE aljefe.RutAlumn = txtRutJefe.Text; aljefe.Nombre = txtNombreJEfe.Text; aljefe.Correo = "AA"; aljefe.Estado = 1; aljefe.Fk_idCar = int.Parse(ddlCarrera.SelectedValue); aljefe.Fk_idRol = 2; //para el valor fk_idsem se agrega desde la query //para el campof fk_idUs se agrega desde la query //definir dueño de la idea if (dueñoDba.Checked) { aldba.DueñoIdea = 1; } else if (dueñoProgra.Checked) { alprogra.DueñoIdea = 1; } else if (dueñoJefe.Checked) { aljefe.DueñoIdea = 1; } else { throw new Exception("Debe seleccionar algun dueño de la idea"); } //DEFINICION JEFE DE PROYECTO //toma de datos tabla proyecto Proyecto p = new Proyecto(); p.Nombre = txtNombre_Proyecto.Text; //Toma de tipo de desarrollo if (rdMovil.Checked) { p.Fk_idDe = 1; } else if (rdWeb.Checked) { p.Fk_idDe = 2; } else if (rdArduino.Checked) { p.Fk_idDe = 3; } else if (rdclienteServidor.Checked) { p.Fk_idDe = 4; } //Toma de tipo de negocio if (rdEmpren.Checked) { p.Fk_idTneg = 1; } else if (rdVincula.Checked) { p.Fk_idTneg = 2; } //toma de sucursal p.Fk_idSuc = int.Parse(ddlsucursal.SelectedValue); //toma de datos Descrpproyecto DescrpProyecto des = new DescrpProyecto(); des.Link = txtLinkPitch.Text; des.Identificacion = txtIdentificacion.Text; des.Origen = txtOrigen.Text; des.Afectados = txtAfectados.Text; des.Justificacion = txtJustificacion.Text; des.Propuesta_solucion = txtPropuesta.Text; des.Definiciones = txtDefiniciones.Text; if (fuDiagrama.HasFile) { //guardado de imagen int tamanio = fuDiagrama.PostedFile.ContentLength; byte[] ImagenOriginal = new byte[tamanio]; fuDiagrama.PostedFile.InputStream.Read(ImagenOriginal, 0, tamanio); Bitmap ImagenOriginalBinaria = new Bitmap(fuDiagrama.PostedFile.InputStream); string ImagenDataURL64 = "data:image/jpg;base64," + Convert.ToBase64String(ImagenOriginal); imgDiagrama.ImageUrl = ImagenDataURL64; des.Diagrama_func = ImagenOriginal; } else { throw new Exception("Debe ingresar alguna imagen"); } des.Estado = 0; //toma de descripcion proyecto //toma de innovacion TipoInnovacion tp = new TipoInnovacion(); if (rdBeacon.Checked) { tp.IdTinno = 1; } else if (rdDron.Checked) { tp.IdTinno = 2; } else if (rdRobotica.Checked) { tp.IdTinno = 3; } else if (rdInternetDeLasCosas.Checked) { tp.IdTinno = 4; } else if (rdLentesVr.Checked) { tp.IdTinno = 5; } else if (rdOtro.Checked) { tp.IdTinno = 6; tp.Tipo = txtOtro.Text; } else if (rdDomotica.Checked) { tp.IdTinno = 7; } //TOMA TIPO DE INOVACION NEGOCIO TipoInnovacionNegocio tin = new TipoInnovacionNegocio(); if (cbWebPay.Checked) { tin.IdTin = 1; } else if (cbMigracion.Checked) { tin.IdTin = 2; } else if (cbIntegraOtroSis.Checked) { tin.IdTin = 3; } //inserto de datos if (datos.InsertarFicha(s, gp, p, aldba, alprogra, aljefe, des, tp, docPEP, docGPI, tin)) { Response.Write("<script language=javascript>alert('Dato Ingresado');</script>"); } else { Response.Write("<script language=javascript>alert('Dato NO Ingresado');</script>"); } } catch (Exception ex) { Response.Write("<script language=javascript>alert('Error: " + ex.Message + "');</script>"); } }