private string PonerRecurso(int IdRecurso, int IdNodo, int iUltCierreEco, int IdPsn, bool bDeriva, decimal costecon, decimal costerep, bool bNotif) { SqlConnection oConn = null; SqlTransaction tr = null; string sResul = ""; try { oConn = Conexion.Abrir(); tr = Conexion.AbrirTransaccion(oConn); //lA FECHA DE alta en el proyecto será la siguiente al último mes cerrado del nodo DateTime dtFechaAlta = Fechas.AnnomesAFecha(Fechas.AddAnnomes(iUltCierreEco, 1)); if (!TareaRecurso.AsociadoAProyecto(tr, IdPsn, IdRecurso)) { //TareaRecurso.AsociarAProyecto(tr, IdNodo, IdRecurso, IdPsn, null, dtFechaAlta, null); //if (costecon == null) costecon = 0; USUARIOPROYECTOSUBNODO.Insert(tr, IdPsn, IdRecurso, costecon, costerep, bDeriva, dtFechaAlta, null, null); } else { //TareaRecurso.ReAsociarAProyecto(tr, IdRecurso, IdPsn); if (!USUARIOPROYECTOSUBNODO.AsociadoDeAltaProyecto(tr, IdPsn, IdRecurso)) { USUARIOPROYECTOSUBNODO.Update(tr, IdPsn, IdRecurso, costecon, costerep, bDeriva, dtFechaAlta, null, null); } } Conexion.CommitTransaccion(tr); } catch (Exception ex) { Conexion.CerrarTransaccion(tr); sResul = Errores.mostrarError("Error al grabar", ex); } finally { Conexion.Cerrar(oConn); } return(sResul); }
protected void Page_Load(object sender, EventArgs e) { try { if (!Page.IsCallback) { Master.nBotonera = 45; Master.nResolucion = 1280; Master.bFuncionesLocales = true; Master.TituloPagina = "Cambio de estructura de usuarios"; Master.FuncionesJavaScript.Add("Javascript/draganddrop.js"); Master.FuncionesJavaScript.Add("Javascript/boxover.js"); rdbAmbito.Items[1].Text = Estructura.getDefLarga(Estructura.sTipoElem.NODO); //02/02/2016 Victor, sacar el mes del último mes fcerrado de la empresa //txtMesValor.Text = Fechas.AnnomesAFechaDescLarga(Fechas.FechaAAnnomes(DateTime.Now)); PARAMETRIZACIONSUPER oPar = PARAMETRIZACIONSUPER.Select(null); txtMesValor.Text = Fechas.AnnomesAFechaDescLarga(Fechas.AddAnnomes(oPar.t725_ultcierreempresa_ECO, 1)); hdnMesValor.Text = Fechas.FechaAAnnomes(DateTime.Now).ToString(); if (CAMBIOESTRUCTURAUSUARIO.bHayAparcadas(null)) { sHayAparcadas = "true"; } } } catch (Exception ex) { Master.sErrores += Errores.mostrarError("Error al cargar los datos", ex); } //1º Se indican (por este orden) la función a la que se va a devolver el resultado // y la función que va a acceder al servidor string cbRespuesta = Page.ClientScript.GetCallbackEventReference(this, "arg", "RespuestaCallBack", "context", false); string cbLlamada = "function RealizarCallBack(arg, context)" + "{" + cbRespuesta + ";" + "}"; //2º Se "registra" la función que va a acceder al servidor. Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "RealizarCallBack", cbLlamada, true); }
private string obtenerDatos(int iAnoMes) { StringBuilder sb = new StringBuilder(); try { string sAnoMesIni, sAnoMesFin; int iAnoMesIni = Fechas.AddAnnomes(iAnoMes, -12), iAnoMesFin; sAnoMesIni = iAnoMesIni.ToString(); this.hdnMesAct.Value = Fechas.AnnomesAFechaDescCorta(iAnoMes); #region grafico 1 DateTime dtPrimer = Fechas.crearDateTime("01/" + sAnoMesIni.Substring(4, 2) + "/" + sAnoMesIni.Substring(0, 4)); iAnoMesFin = Fechas.AddAnnomes(iAnoMes, 1); sAnoMesFin = iAnoMesFin.ToString(); DateTime dtUltimo = Fechas.crearDateTime("01/" + sAnoMesFin.Substring(4, 2) + "/" + sAnoMesFin.Substring(0, 4)); SqlDataReader dr = CONEXIONES.SelectGraficoMes(null, int.Parse(Session["IDFICEPI_PC_ACTUAL"].ToString()), (int)Session["UsuarioActual"], dtPrimer, dtUltimo); DataTable table = new DataTable(); table.Load(dr); DataView dv = table.DefaultView; dr.Close(); dr.Dispose(); Chart1.ChartAreas["ChartArea1"].AxisX.MinorGrid.Enabled = true; Chart1.ChartAreas["ChartArea1"].AxisX.MinorGrid.Interval = 1; Chart1.ChartAreas["ChartArea1"].AxisX.MinorGrid.LineWidth = 1; Chart1.ChartAreas["ChartArea1"].AxisX.MinorGrid.LineColor = Color.LightGray; //Creo las series para el gráfico con cada uno de los conceptos //Creo una serie para las conexiones propias Series seriePropias = new Series("Conexiones propias"); //seriePropias.Points.DataBind(dv, "anomes", "npropias", ""); seriePropias.Points.DataBind(dv, "mes", "npropias", ""); Chart1.Series.Add(seriePropias); //Creo una serie para las conexiones en mi nombre Series serieAjenas = new Series("Conexiones en su nombre"); //serieAjenas.Points.DataBind(dv2, "anomes", "najenas", ""); serieAjenas.Points.DataBind(dv, "mes", "najenas", ""); Chart1.Series.Add(serieAjenas); for (int i = 0; i < Chart1.Series.Count; i++) { Chart1.Series[i].ChartType = SeriesChartType.Bar; Chart1.Series[i]["PointWidth"] = "1.0"; Chart1.Series[i]["DrawingStyle"] = "Default"; //if (dv.Count == 1) //{ // Chart1.Series[i].ChartType = SeriesChartType.Column; // Chart1.Series[i]["PointWidth"] = "0.2"; // Chart1.Series[i]["DrawingStyle"] = "Default"; //} //else //{ // Chart1.Series[i].ChartType = SeriesChartType.Spline; // Chart1.Series[i].BorderWidth = 2; // Chart1.Series[i].ShadowOffset = 1; //} //Chart1.Series[i].MarkerStyle = MarkerStyle.Circle; //Chart1.Series[i].MarkerColor = Color.Navy; //Chart1.Series[i].MarkerSize = 6; Chart1.Series[i].ToolTip = "#VALY{N0}"; //Asigno evento click //Chart1.Series[i].MapAreaAttributes = "onclick=\"javascript:alert('Event captured! Series Name: #SER, Point Index: #INDEX, Valor: #VALX');\""; //Chart1.Series[i].MapAreaAttributes = "onclick=\"javascript:getMes('#VALX');\" onmouseover=\"document.body.style.cursor='pointer'\" onmouseout=\"document.body.style.cursor='default'\""; Chart1.Series[i].MapAreaAttributes = "onclick=\"javascript:getMes('#VALX');\" onmouseover=\"ponerMano();\" onmouseout=\"quitarMano();\""; } Chart1.Visible = true; table.Dispose(); dv.Dispose(); #endregion return("OK@#@");// +sb.ToString(); } catch (Exception ex) { return("Error@#@" + Errores.mostrarError("Error al obtener los datos.", ex)); } }
private string getProyectosNoCerrados(int iAnoMes) { try { StringBuilder sb = new StringBuilder(); bool bMesesOK = true, bProcesable = true; sb.Append("<table class='texto' id=tblDatos style='width: 970px;' border='0'>"); sb.Append("<colgroup>"); sb.Append("<col style='width:25px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:55px;' />"); sb.Append("<col style='width:220px;' />"); sb.Append("<col style='width:55px;' />"); sb.Append("<col style='width:50px;' />"); sb.Append("<col style='width:60px;' />"); sb.Append("<col style='width:60px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:60px;' />");//Contrato sb.Append("<col style='width:80px;' />"); sb.Append("<col style='width:80px;' />"); sb.Append("<col style='width:80px;' />"); sb.Append("<col style='width:25px;' />"); sb.Append("</colgroup>"); SqlDataReader dr = PROYECTOSUBNODO.ObtenerProyectosNoCerrados((int)Session["UsuarioActual"], iAnoMes); while (dr.Read()) { bMesesOK = true; bProcesable = true; sb.Append("<tr id='" + dr["t301_idproyecto"].ToString() + "' "); sb.Append("idPSN='" + dr["t305_idproyectosubnodo"].ToString() + "' "); sb.Append("monedaPSN='" + dr["t422_idmoneda_proyecto"].ToString() + "' "); sb.Append(" ondblclick='irCarrusel(this)' "); if (dr["faltan_CEC_obligatorios"].ToString() == "1" || dr["faltan_CED_obligatorios"].ToString() == "1" || (Fechas.AddAnnomes(int.Parse(dr["T303_ultcierreeco"].ToString()), 1) != int.Parse(dr["t325_anomes"].ToString()) && sOrigen != "carrusel") ) { bProcesable = false; } if (bProcesable) { sb.Append(" p='1'"); } else { sb.Append(" p='0'"); } //sb.Append(" ondblclick='CierreProyecto(this)' procesado='' "); // sb.Append(" procesado='' "); //if (iAnoMes == int.Parse(dr["t325_anomes"].ToString())) sb.Append(" class='MANO' "); sb.Append(" class='MA' "); sb.Append("style='height:20px;'>"); if (dr["ajuste"].ToString() == "1") { this.hdnExcepcion.Text = "1"; } //Celda 1 sb.Append("<td style='cursor:pointer;'>"); if (bProcesable) { sb.Append("<input type='checkbox' class='check' style='margin-left:5px;'/>"); } sb.Append("</td>"); //Celda 2 if (dr["t305_cualidad"].ToString() == "C") { sb.Append("<td><img src='../../../images/imgIconoContratante.gif' width='16px' height='16px' /></td>"); } else { sb.Append("<td><img src='../../../images/imgIconoRepPrecio.gif' width='16px' height='16px' /></td>"); } //Celda 3 sb.Append("<td style='text-align:right; padding-right:5px;'>" + int.Parse(dr["t301_idproyecto"].ToString()).ToString("#,###") + "</td>"); //Celda 4 if (iAnoMes != int.Parse(dr["t325_anomes"].ToString())) { sb.Append("<td style='padding-left:3px;' style='color:red'>"); } else { sb.Append("<td style='padding-left:3px;'>"); } sb.Append("<nobr class='NBR W210' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../images/info.gif' style='vertical-align:middle' /> Información] body=[<label style='width:75px'>Proyecto:</label>" + dr["t301_denominacion"].ToString().Replace((char)34, (char)39) + "<br><label style='width:75px'>Responsable:</label>" + dr["responsable"].ToString().Replace((char)34, (char)39) + "<br><label style='width:75px'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "<br><label style='width:75px'>Cliente:</label>" + dr["t302_denominacion"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\" ondblclick='irCarrusel(this.parentNode.parentNode)' >" + dr["t301_denominacion"].ToString().Replace((char)34, (char)39) + "</nobr></td>"); //Celda 5 sb.Append("<td>" + Fechas.AnnomesAFechaDescCorta(int.Parse(dr["T303_ultcierreeco"].ToString())) + "</td>"); //Celda 6 if (Fechas.AddAnnomes(int.Parse(dr["T303_ultcierreeco"].ToString()), 1) != int.Parse(dr["t325_anomes"].ToString())) { sb.Append("<td style='color:red'>"); bMesesOK = false; } else { sb.Append("<td>"); } sb.Append(Fechas.AnnomesAFechaDescCorta(int.Parse(dr["t325_anomes"].ToString())) + "</td>"); //Celda 7 sb.Append("<td style='text-align:right; padding-right:2px;'>" + double.Parse(dr["consumoIAP"].ToString()).ToString("N") + "</td>"); //Celda 8 sb.Append("<td style='text-align:right; padding-right:2px;'>" + double.Parse(dr["consumoPGE"].ToString()).ToString("N") + "</td>"); //Celda 9 if (bMesesOK) { sb.Append("<td style=text-align:center;'></td>"); } else { if (sOrigen == "carrusel") { sb.Append("<td style=text-align:center;'><img src='../../../Images/imgCalAma.gif' /></td>"); } else { sb.Append("<td style=text-align:center;'><img src='../../../Images/imgCalRojo.gif' /></td>"); } this.hdnExcepcion.Text = "1"; } //Celda 10 if (dr["faltan_CEC_obligatorios"].ToString() == "1" || dr["faltan_CED_obligatorios"].ToString() == "1") { sb.Append("<td style=text-align:center;'><img src='../../../Images/imgIconoObl16.gif' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=text-align:center;'></td>"); } //Celda 11 if (dr["faltan_Cualificadores_obligatorios"].ToString() == "1") { sb.Append("<td style=text-align:center;'><img src='../../../Images/imgIconoObl16Azul.gif' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=text-align:center;'></td>"); } //Celda 12 if (decimal.Parse(dr["consumonivel"].ToString()) > 0) { sb.Append("<td style=text-align:center;'><img src='../../../Images/imgConsNivel.gif' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=text-align:center;'></td>"); } //Celda 13 if (dr["ajuste"].ToString() == "1") { sb.Append("<td style=text-align:center;'><img src='../../../Images/imgAjuste2.gif' title='Importe de ajuste: " + double.Parse(dr["Importe_Ajuste"].ToString()).ToString("N") + " €' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=text-align:center;'></td>"); } //Celda 14 if (dr["t306_idcontrato"].ToString() == "" || dr["t305_cualidad"].ToString() != "C") { sb.Append("<td style='text-align:right;'></td>"); } else { sb.Append("<td style='text-align:right;'>" + int.Parse(dr["t306_idcontrato"].ToString()).ToString("#,###") + "</td>"); } //Celda 15 if (dr["t305_cualidad"].ToString() != "C") { sb.Append("<td style='text-align:right;'></td>"); } else { sb.Append("<td style='text-align:right;'>" + decimal.Parse(dr["TotalContrato"].ToString()).ToString("N") + "</td>"); } //Celda 16 sb.Append("<td style='text-align:right;'>" + decimal.Parse(dr["TotalProducido"].ToString()).ToString("N") + "</td>"); //Celda 17 if (dr["t305_cualidad"].ToString() != "C") { sb.Append("<td style='text-align:right;'></td>"); } else { sb.Append("<td style='text-align:right;'>" + decimal.Parse(dr["TPPAC"].ToString()).ToString("N") + "</td>"); } //Celda 18 if (bProcesable) { sb.Append("<td style='text-align:right;padding-right:3px;'><img src='../../../Images/imgMesAbierto.gif' /></td>"); } else { sb.Append("<td style='text-align:right;padding-right:3px;'><img src='../../../Images/imgMesNoProceso.gif' /></td>"); } sb.Append("</tr>"); } dr.Close(); dr.Dispose(); sb.Append("</table>"); return("OK@#@" + sb.ToString() + "@#@" + this.hdnExcepcion.Text); } catch (Exception ex) { return("Error@#@" + Errores.mostrarError("Error al obtener los proyectos.", ex)); } }
private void obtenerDatosXML(int iAnoMes) { StringBuilder sbGeneral = new StringBuilder(); StringBuilder sbMeses = new StringBuilder(); try { string sAux, sAnoMesIni, sAnoMesFin; //sAnoMesAux, int iAnoMesIni = Fechas.AddAnnomes(iAnoMes, -12), nOcupacion = 0, nOcupacionMax = 0, iAnoMesAux, iAnoMesFin; //iPropias = 0, iAjenas = 0, iLargura = 0, iLarguraAjena = 0, sAnoMesIni = iAnoMesIni.ToString(); DateTime dtPrimer = Fechas.crearDateTime("01/" + sAnoMesIni.Substring(4, 2) + "/" + sAnoMesIni.Substring(0, 4)); iAnoMesFin = Fechas.AddAnnomes(iAnoMes, 1); sAnoMesFin = iAnoMesFin.ToString(); DateTime dtUltimo = Fechas.crearDateTime("01/" + sAnoMesFin.Substring(4, 2) + "/" + sAnoMesFin.Substring(0, 4)); #region Cargo array de 13 meses con el nº de conexiones propias por mes ArrayList slLista = new ArrayList(); iAnoMesAux = iAnoMesIni; for (int iFila = 0; iFila < 13; iFila++) { sAux = Fechas.AnnomesAFechaDescLarga(iAnoMesAux); string[] aDatosAux = new string[] { sAux, "0", "0", iAnoMesAux.ToString() }; slLista.Add(aDatosAux); iAnoMesAux = Fechas.AddAnnomes(iAnoMesAux, 1); } SqlDataReader dr = CONEXIONES.SelectPropiasMes(null, int.Parse(Session["IDFICEPI_PC_ACTUAL"].ToString()), dtPrimer, dtUltimo); while (dr.Read()) { nOcupacion = int.Parse(dr["npropias"].ToString()); if (nOcupacion > nOcupacionMax) { nOcupacionMax = nOcupacion; } for (int iFila = 0; iFila < 13; iFila++) { if (((string[])slLista[iFila])[3] == dr["anomes"].ToString()) { ((string[])slLista[iFila])[1] = dr["npropias"].ToString(); break; } } } dr.Close(); dr.Dispose(); #endregion #region Cargo array de 13 meses con el nº de conexiones ajenas por mes SqlDataReader dr2 = CONEXIONES.SelectAjenasMes(null, (int)Session["UsuarioActual"], dtPrimer, dtUltimo); while (dr2.Read()) { nOcupacion = int.Parse(dr2["najenas"].ToString()); if (nOcupacion > nOcupacionMax) { nOcupacionMax = nOcupacion; } for (int iFila = 0; iFila < 13; iFila++) { if (((string[])slLista[iFila])[3] == dr2["anomes"].ToString()) { ((string[])slLista[iFila])[2] = dr2["najenas"].ToString(); break; } } } dr2.Close(); dr2.Dispose(); #endregion sbMeses.Append("<categories font='Arial' fontSize='11' fontColor='000000'>"); for (int iFila = 12; iFila >= 0; iFila--) { if (iFila == 12) { nAnomesInicio = int.Parse(((string[])slLista[iFila])[3]); } sbMeses.Append("<category name='" + ((string[])slLista[iFila])[0] + "' />"); } sbMeses.Append("</categories>"); sbMeses.Append("<dataset seriesname='Propias' color='ff0033' alpha='70'>"); for (int iFila = 12; iFila >= 0; iFila--) { if (iFila == 12) { nPropias = int.Parse(((string[])slLista[iFila])[1]); } sbMeses.Append("<set value='" + ((string[])slLista[iFila])[1] + "' link='JavaScript:buscar(" + ((string[])slLista[iFila])[1] + "," + ((string[])slLista[iFila])[2] + "," + ((string[])slLista[iFila])[3] + ")' />"); } sbMeses.Append("</dataset>"); sbMeses.Append("<dataset seriesname='En su nombre' color='000066' showValues='1' alpha='70'>"); for (int iFila = 12; iFila >= 0; iFila--) { if (iFila == 12) { nAjenas = int.Parse(((string[])slLista[iFila])[2]); } sbMeses.Append("<set value='" + ((string[])slLista[iFila])[2] + "' link='JavaScript:buscar(" + ((string[])slLista[iFila])[1] + "," + ((string[])slLista[iFila])[2] + "," + ((string[])slLista[iFila])[3] + ")' />"); } sbMeses.Append("</dataset>"); sbGeneral.Append("<graph "); //sbGeneral.Append(" xaxisname='Meses' "); //sbGeneral.Append(" yaxisname='Actividad' "); sbGeneral.Append(" hovercapbg='73cef6' "); sbGeneral.Append(" hovercapborder='889E6D'"); sbGeneral.Append(" rotateNames='0' "); sbGeneral.Append(" animation='1' "); sbGeneral.Append(" yAxisMaxValue='" + (nOcupacionMax + 10).ToString() + "' "); sbGeneral.Append(" numdivlines='4' "); sbGeneral.Append(" divLineColor='CCCCCC' "); sbGeneral.Append(" divLineAlpha='80' "); sbGeneral.Append(" decimalPrecision='0' "); sbGeneral.Append(" showAlternateVGridColor='1' "); sbGeneral.Append(" AlternateVGridAlpha='30' "); sbGeneral.Append(" AlternateVGridColor='CCCCCC' "); //sbGeneral.Append(" caption='Actividad registrada' "); sbGeneral.Append(" bgColor='D8E5EB' "); sbGeneral.Append(" >"); strXML = sbGeneral.ToString() + sbMeses.ToString() + "</graph>"; } catch (Exception ex) { Master.sErrores = Errores.mostrarError("Error al obtener el registro de actividad.", ex); } }
private void obtenerGrafico(int iAnoMes) { StringBuilder sb = new StringBuilder(); try { string sAux, sAnoMesAux, sAnoMesIni, sAnoMesFin; int iAnoMesIni = Fechas.AddAnnomes(iAnoMes, -12), iPropias = 0, iAjenas = 0, nOcupacion = 0, nOcupacionMax = 0, iLargura = 0, iLarguraAjena = 0, iAnoMesAux, iAnoMesFin; sAnoMesIni = iAnoMesIni.ToString(); DateTime dtPrimer = Fechas.crearDateTime("01/" + sAnoMesIni.Substring(4, 2) + "/" + sAnoMesIni.Substring(0, 4)); iAnoMesFin = Fechas.AddAnnomes(iAnoMes, 1); sAnoMesFin = iAnoMesFin.ToString(); DateTime dtUltimo = Fechas.crearDateTime("01/" + sAnoMesFin.Substring(4, 2) + "/" + sAnoMesFin.Substring(0, 4)); sb.Append("<table id='tblDatos' class='texto MANO' style='WIDTH: 960px; table-layout:fixed;' cellSpacing='0' border='0'>"); sb.Append("<colgroup>"); sb.Append(" <col style='width:90px;'/>"); sb.Append(" <col style=\"width:870px;;\" />"); sb.Append("</colgroup>"); sb.Append("<tr style=\"height:20px;cursor:default;\">"); sb.Append("<td style='padding-left:3px; border-right-style:solid; border-right-width:2px; border-right-color: Black;'> </td>"); sb.Append("<td> </td></tr>"); #region Cargo array de 13 meses con el nº de conexiones propias por mes ArrayList slLista = new ArrayList(); iAnoMesAux = iAnoMesIni; for (int iFila = 0; iFila < 13; iFila++) { sAux = Fechas.AnnomesAFechaDescLarga(iAnoMesAux); string[] aDatosAux = new string[] { sAux, "0", "0", iAnoMesAux.ToString() }; slLista.Add(aDatosAux); iAnoMesAux = Fechas.AddAnnomes(iAnoMesAux, 1); } SqlDataReader dr = CONEXIONES.SelectPropiasMes(null, int.Parse(Session["IDFICEPI_PC_ACTUAL"].ToString()), dtPrimer, dtUltimo); while (dr.Read()) { nOcupacion = int.Parse(dr["npropias"].ToString()); if (nOcupacion > nOcupacionMax) { nOcupacionMax = nOcupacion; } for (int iFila = 0; iFila < 13; iFila++) { if (((string[])slLista[iFila])[3] == dr["anomes"].ToString()) { ((string[])slLista[iFila])[1] = dr["npropias"].ToString(); break; } } } dr.Close(); dr.Dispose(); #endregion #region Cargo array de 13 meses con el nº de conexiones ajenas por mes SqlDataReader dr2 = CONEXIONES.SelectAjenasMes(null, (int)Session["UsuarioActual"], dtPrimer, dtUltimo); while (dr2.Read()) { nOcupacion = int.Parse(dr2["najenas"].ToString()); if (nOcupacion > nOcupacionMax) { nOcupacionMax = nOcupacion; } for (int iFila = 0; iFila < 13; iFila++) { if (((string[])slLista[iFila])[3] == dr2["anomes"].ToString()) { ((string[])slLista[iFila])[2] = dr2["najenas"].ToString(); break; } } } dr2.Close(); dr2.Dispose(); #endregion for (int iFila = 12; iFila >= 0; iFila--) { sAux = ((string[])slLista[iFila])[0];//Añomes en formato corto iPropias = int.Parse(((string[])slLista[iFila])[1]); iAjenas = int.Parse(((string[])slLista[iFila])[2]); sAnoMesAux = ((string[])slLista[iFila])[3];//Añomes en formato numerico nOcupacion = iPropias; //if (iAjenas > iPropias) // nOcupacion = iAjenas; iLargura = flGetWidth(nOcupacion, nOcupacionMax); iLarguraAjena = flGetWidth(iAjenas, nOcupacionMax); sb.Append("<tr id=" + sAnoMesAux + " iPropias=" + iPropias.ToString() + " iAjenas=" + iAjenas.ToString() + " style=\"height:20px; background-color:White;\" onclick='buscar(this.id)'>"); sb.Append("<td style='padding-left:3px; border-right-style:solid; border-right-width:2px; border-right-color: Black;'>" + sAux + "</td>"); sb.Append("<td style=\"background-image:url('../../../Images/imgGanttBG175.gif')\">"); if (iLargura != 0 || iLarguraAjena != 0) { sb.Append("<span style='height:18px;noWrap:true;'>"); sb.Append("<img src='../../../Images/imgGanttR.gif' style='vertical-align:middle;height:12px;width:" + iLargura.ToString() + "px;margin:0px;border:0px;display:block;' />"); sb.Append("<img src='../../../Images/imgAR.gif' style='vertical-align:middle;height:5px;width:" + iLarguraAjena.ToString() + "px;margin:0px;border:0px;display:block;' />"); sb.Append("</span>"); sb.Append("<label style='margin-left:10px;color:red;vertical-align:top;margin-top:8px;font-weight:bold;'>" + iPropias.ToString() + "</label>"); sb.Append("<label style='margin-left:20px;vertical-align:top;margin-top:8px;font-weight:bold;'>" + iAjenas.ToString() + "</label>"); } else { sb.Append(" "); } sb.Append("</td></tr>"); } sb.Append("<tr style=\"height:20px;\">"); sb.Append("<td style='padding-left:3px; border-right-style:solid; border-right-width:2px; border-right-color: Black; border-top-style:solid; border-top-width:2px; border-top-color: Black;'> </td>"); sb.Append("<td style=\" border-top-style:solid; border-top-width:2px; border-top-color: Black;\"> </td></tr>"); sb.Append("</table>"); strTablaHTMLGrafico = sb.ToString(); } catch (Exception ex) { Master.sErrores = Errores.mostrarError("Error al obtener el registro de actividad propio.", ex); } }
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsCallback) { Master.TituloPagina = "Cuadre de consumos económicos"; Master.bFuncionesLocales = true; Master.FuncionesJavaScript.Add("Javascript/boxover.js"); try { //if (!(bool)Session["FORANEOS"]) //{ // this.imgForaneo.Visible = false; // this.lblForaneo.Visible = false; //} sNodo = Estructura.getDefCorta(Estructura.sTipoElem.NODO); gomaNodo.Attributes.Add("title", "Borra el " + Estructura.getDefLarga(Estructura.sTipoElem.NODO)); this.lblNodo.InnerText = sNodo; this.lblNodo.Attributes.Add("title", Estructura.getDefLarga(Estructura.sTipoElem.NODO)); //this.lbl1.InnerText = "Asociados a proyectos del " + this.lblNodo.InnerText; this.lblInternos.InnerText = "Del " + sNodo; this.lblOtrosNodos.InnerText = "De otros " + sNodo + "s"; if (SUPER.Capa_Negocio.Utilidades.EsAdminProduccion()) { cboCR.Visible = false; hdnIdNodo.Visible = true; txtDesNodo.Visible = true; gomaNodo.Visible = true; } else { cboCR.Visible = true; hdnIdNodo.Visible = false; txtDesNodo.Visible = false; gomaNodo.Visible = false; cargarNodos(); } int iUMC; string sUMC = USUARIO.getUMCNodo(null, (int)Session["UsuarioActual"]); if (sUMC != "") { iUMC = Fechas.AddAnnomes(int.Parse(sUMC), 1); } else { //DateTime dtUMC = System.DateTime.Today; //iUMC = (dtUMC.Year * 100) + dtUMC.Month; iUMC = Fechas.AddAnnomes(Fechas.FechaAAnnomes(DateTime.Today), 1); } this.sMSCMA = iUMC.ToString(); //PREFERENCIAS string[] aDatosPref = Regex.Split(getPreferencia(""), "@#@"); if (bHayPreferencia && aDatosPref[0] == "OK") { #region preferencia if (SUPER.Capa_Negocio.Utilidades.EsAdminProduccion()) { hdnIdNodo.Text = aDatosPref[1]; txtDesNodo.Text = aDatosPref[2]; } else { cboCR.SelectedValue = aDatosPref[1]; } chkDelNodo.Checked = (aDatosPref[3] == "1") ? true : false; chkExternos.Checked = (aDatosPref[4] == "1") ? true : false; chkOtroNodo.Checked = (aDatosPref[5] == "1") ? true : false; chkActuAuto.Checked = (aDatosPref[6] == "1") ? true : false; chkRPA.Checked = (aDatosPref[7] == "1") ? true : false; this.rdbCoste.SelectedValue = aDatosPref[8]; this.hdnModeloCoste.Value = aDatosPref[8]; if (chkActuAuto.Checked) { btnObtener.Disabled = true; string strTabla = ObtenerJornadasReportadas(iUMC, iUMC, aDatosPref[1], aDatosPref[3], aDatosPref[4], aDatosPref[5], aDatosPref[7], aDatosPref[8]); string[] aTabla = Regex.Split(strTabla, "@#@"); if (aTabla[0] == "OK") { divCatalogo2.InnerHtml = aTabla[1]; } else { Master.sErrores += Errores.mostrarError(aTabla[1]); } } else { divCatalogo2.InnerHtml = "<table id='tblDatos'></table>"; } #endregion } else { if (aDatosPref[0] == "Error") { Master.sErrores += Errores.mostrarError(aDatosPref[1]); } else { divCatalogo2.InnerHtml = "<table id='tblDatos'></table>"; } } } catch (Exception ex) { Master.sErrores = Errores.mostrarError("Error al obtener la consulta de jornadas reportadas.", ex); } string cbRespuesta = Page.ClientScript.GetCallbackEventReference(this, "arg", "RespuestaCallBack", "context", false); string cbLlamada = "function RealizarCallBack(arg, context)" + "{" + cbRespuesta + ";" + "}"; Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "RealizarCallBack", cbLlamada, true); } }
private string procesarCierre(string sOrigen, string sAnomesADM, string sPSN, string sCualidad, string sSegMesProy, string sIDProyecto, string sAnomes, string sIdSegMesProy) { string sResul = ""; string sEstadoMes = ""; bool bReintentar = true, bHayQueAjustar = false; decimal nImporteAjuste = 0; #region apertura de conexión y transacción try { oConn = Conexion.Abrir(); tr = Conexion.AbrirTransaccionSerializable(oConn); } catch (Exception ex) { if (oConn.State == ConnectionState.Open) { Conexion.Cerrar(oConn); } sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex); return(sResul); } #endregion try { //comprobar que no se hayan abierto meses anteriores. if (sOrigen == "ADM" || int.Parse(sAnomes) == PROYECTOSUBNODO.ObtenerPrimerMesAbierto(tr, int.Parse(sPSN))) { if (sCualidad == "C") { SEGMESPROYECTOSUBNODO.GenerarMesEnTransaccion(tr, int.Parse(sIDProyecto)); SqlDataReader dr = SEGMESPROYECTOSUBNODO.ObtenerAjuste(tr, int.Parse(sSegMesProy)); if (dr.Read()) { bHayQueAjustar = ((int)dr["ajuste"] == 1) ? true : false; nImporteAjuste = decimal.Parse(dr["Importe_Ajuste"].ToString()); } dr.Close(); dr.Dispose(); if (bHayQueAjustar) { //buscar el mes máximo para ese PSN y crear uno posterior para el ajuste int nUltAnomes = PROYECTOSUBNODO.ObtenerUltimoMes(tr, int.Parse(sPSN)); sEstadoMes = SEGMESPROYECTOSUBNODO.EstadoMesACrear(tr, int.Parse(sPSN), Fechas.AddAnnomes(nUltAnomes, 1)); int nNuevoSegMes = SEGMESPROYECTOSUBNODO.Insert(tr, int.Parse(sPSN), Fechas.AddAnnomes(nUltAnomes, 1), sEstadoMes, 0, 0, false, 0, 0); DATOECO.Insert(tr, nNuevoSegMes, Constantes.AjusteProdCont, "Ajuste de producción y contratación", nImporteAjuste, null, null, null); } } if (sOrigen == "ADM") { SEGMESPROYECTOSUBNODO.CerrarMesADM(tr, int.Parse(sPSN), int.Parse(sAnomesADM)); } else { SEGMESPROYECTOSUBNODO.Cerrar(tr, int.Parse(sSegMesProy)); } sResul = "OK@#@"; } else { sResul = "OK@#@NO"; } Conexion.CommitTransaccion(tr); if ((bool)Session["ALERTASPROY_ACTIVAS"] && sIdSegMesProy != "") { try { sIdSegMesProyGenerarDialogos = sIdSegMesProy; ThreadStart ts = new ThreadStart(GenerarDialogos); Thread workerThread = new Thread(ts); workerThread.Start(); //SEGMESPROYECTOSUBNODO.GenerarDialogosDeAlertas(sIdSegMesProy); } catch (Exception) { } } } catch (Exception ex) { Conexion.CerrarTransaccion(tr); sResul = "Error@#@" + Errores.mostrarError("Error al procesar el cierre.", ex, bReintentar); } finally { Conexion.Cerrar(oConn); } return(sResul); }
private string getProyectosCierre(bool bADM, string nPSN, string sAnomes, string sResponsables, string sSubnodos, string sPSN, string sOrigen, string sComparacionLogica, string bListaProy) { try { StringBuilder sb = new StringBuilder(); Hashtable htAjustes = new Hashtable(); SqlDataReader dr = null; bool bMesesOK = true, bProcesable = true; DateTime? oDT1 = null, oDT2 = null, oDT3 = null, oDT4 = null; int nTiempoBD = 0; int nTiempoHTML = 0; int nTiempoDialogos = 0; sb.Append("<TABLE class='texto' id='tblDatos' style='width: 974px;'>"); sb.Append("<colgroup>"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:60px;' />"); sb.Append("<col style='width:140px;' />"); sb.Append("<col style='width:35px;' />"); sb.Append("<col style='width:55px;' />"); sb.Append("<col style='width:54px;' />"); sb.Append("<col style='width:60px;' />"); sb.Append("<col style='width:60px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:20px;' />"); sb.Append("<col style='width:55px;' />"); sb.Append("<col style='width:80px;' />"); sb.Append("<col style='width:80px;' />"); sb.Append("<col style='width:80px;' />"); sb.Append("<col style='width:25px;' />"); sb.Append("</colgroup>"); sb.Append("<tbody>"); bool bCarrusel = false; if (sOrigen == "carrusel") { bCarrusel = (SUPER.Capa_Negocio.Utilidades.EsAdminProduccion()) ? true : false; } oDT1 = DateTime.Now; if (bListaProy == "S") { dr = PROYECTOSUBNODO.ObtenerProyectosACerrar(nPSN); } else { if (!bADM) { if (sOrigen == "menucierresat" || sOrigen == "menucierresatsaa") { dr = PROYECTOSUBNODO.ObtenerProyectosACerrarUSA((int)Session["UsuarioActual"], (sOrigen == "menucierresatsaa") ? true : false); } else { dr = PROYECTOSUBNODO.ObtenerProyectosACerrar((int)Session["UsuarioActual"], (nPSN == "") ? null : (int?)int.Parse(nPSN), bCarrusel); } } else { dr = PROYECTOSUBNODO.ObtenerProyectosACerrarADM(int.Parse(sAnomes), sResponsables, sSubnodos, sPSN, (sComparacionLogica == "1") ? true : false); } } oDT2 = DateTime.Now; string s_idsegmesproy = ""; while (dr.Read()) { bMesesOK = true; bProcesable = true; aProyectos.Add(dr["t301_idproyecto"].ToString()); sb.Append("<tr id='" + dr["t301_idproyecto"].ToString() + "' "); sb.Append("idPSN='" + dr["t305_idproyectosubnodo"].ToString() + "' "); sb.Append("cualidad='" + dr["t305_cualidad"].ToString() + "' "); sb.Append("anomes='" + dr["t325_anomes"].ToString() + "' "); //sb.Append("ajuste='" + dr["ajuste"].ToString() + "' "); //sb.Append("importe_ajuste='" + dr["Importe_Ajuste"].ToString() + "' "); sb.Append("nSegMes='" + dr["t325_idsegmesproy"].ToString() + "' "); //if ( (byte)dr["monedas_proyectos_contrato"] > 1 // || (dr["t306_idcontrato"] != DBNull.Value && dr["t422_idmoneda_proyecto"].ToString() != dr["t422_idmoneda_contrato"].ToString())) //{//Por ahora no permitimoes cerrar este caso ni a los administradores. // sb.Append("a_procesar='0' "); // bProcesable = false; //} //else if (bADM) { sb.Append("a_procesar='1' "); s_idsegmesproy += dr["t325_idsegmesproy"].ToString() + ","; } else if (dr["faltan_CEC_obligatorios"].ToString() == "1" || dr["faltan_CED_obligatorios"].ToString() == "1" || dr["faltan_Cualificadores_obligatorios"].ToString() == "1" || (Fechas.AddAnnomes(int.Parse(dr["T303_ultcierreeco"].ToString()), 1) != int.Parse(dr["t325_anomes"].ToString()) && sOrigen != "carrusel") //|| ( (byte)dr["monedas_proyectos_contrato"] > 1 ) //|| (dr["t306_idcontrato"] != DBNull.Value && dr["t422_idmoneda_proyecto"].ToString() != dr["t422_idmoneda_contrato"].ToString()) ) { sb.Append("a_procesar='0' "); bProcesable = false; } else { sb.Append("a_procesar='1' "); s_idsegmesproy += dr["t325_idsegmesproy"].ToString() + ","; } sb.Append("style='height:20px' procesado=''>"); if (dr["ajuste"].ToString() == "1") { this.hdnExcepcion.Text = "1"; } if (dr["t305_cualidad"].ToString() == "C") { sb.Append("<td style=\"border-right:none\"><img src='../../../images/imgIconoContratante.gif' width='16px' height='16px' /></td>"); } else { sb.Append("<td style=\"border-right:none\"><img src='../../../images/imgIconoRepPrecio.gif' width='16px' height='16px' /></td>"); } sb.Append("<td style=\"border-right:none; padding-right:5px;text-align:right;\">" + int.Parse(dr["t301_idproyecto"].ToString()).ToString("#,###") + "</td>"); sb.Append("<td style='padding-left:3px;'><nobr class='NBR W135' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../images/info.gif' style='vertical-align:middle' /> Información] body=[<label style='width:75px'>Proyecto:</label>" + dr["t301_denominacion"].ToString().Replace((char)34, (char)39) + "<br><label style='width:75px'>Categoría:</label>" + ((dr["t301_categoria"].ToString() == "P") ? "Producto" : "Servicio") + "<br><label style='width:75px'>Responsable:</label>" + dr["responsable"].ToString().Replace((char)34, (char)39) + "<br><label style='width:75px'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "<br><label style='width:75px'>Cliente:</label>" + dr["t302_denominacion"].ToString().Replace((char)34, (char)39) + "<br><label style='width:75px'>Moneda:</label>" + dr["t422_denominacion_proyecto"].ToString() + "] hideselects=[off]\">" + dr["t301_denominacion"].ToString().Replace((char)34, (char)39) + "</nobr></td>"); sb.Append("<td style='padding-left:2px;'>" + dr["t422_idmoneda_proyecto"].ToString() + "</td>"); sb.Append("<td style='padding-left:1px;'>" + Fechas.AnnomesAFechaDescCorta(int.Parse(dr["T303_ultcierreeco"].ToString())) + "</td>"); if (Fechas.AddAnnomes(int.Parse(dr["T303_ultcierreeco"].ToString()), 1) != int.Parse(dr["t325_anomes"].ToString())) { sb.Append("<td style='color:red;padding-left:1px;'>"); bMesesOK = false; } else { sb.Append("<td style='padding-left:1px;'>"); } sb.Append(Fechas.AnnomesAFechaDescCorta(int.Parse(dr["t325_anomes"].ToString())) + "</td>"); sb.Append("<td style='text-align:right;padding-right:2px;'>" + decimal.Parse(dr["consumoIAP"].ToString()).ToString("N") + "</td>"); sb.Append("<td style='text-align:right;padding-right:2px;'>" + decimal.Parse(dr["consumoPGE"].ToString()).ToString("N") + "</td>"); if (bMesesOK) { sb.Append("<td style=\"border-right:none;text-align:center;padding-right:2px;\"></td>"); } else { if (sOrigen == "carrusel") { sb.Append("<td style=\"border-right:none;text-align:center;padding-right:2px;\"><img src='../../../Images/imgCalAma.gif' /></td>"); } else { sb.Append("<td style=\"border-right:none;text-align:center;padding-right:2px;\"><img src='../../../Images/imgCalRojo.gif' /></td>"); } this.hdnExcepcion.Text = "1"; } if (dr["faltan_CEC_obligatorios"].ToString() == "1" || dr["faltan_CED_obligatorios"].ToString() == "1") { sb.Append("<td style=\"border-right:none;text-align:center;\"><img src='../../../Images/imgIconoObl16.gif' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=\"border-right:none;text-align:center;\"></td>"); } if (dr["faltan_Cualificadores_obligatorios"].ToString() == "1") { sb.Append("<td style=\"border-right:none;text-align:center;\"><img src='../../../Images/imgIconoObl16Azul.gif' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=\"border-right:none;text-align:center;\"></td>"); } if (decimal.Parse(dr["consumonivel"].ToString()) > 0) { sb.Append("<td style=\"border-right:none;text-align:center;\"><img src='../../../Images/imgConsNivel.gif' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=\"border-right:none;text-align:center;\"></td>"); } if ((byte)dr["monedas_proyectos_contrato"] > 1 || (dr["t306_idcontrato"] != DBNull.Value && dr["t422_idmoneda_proyecto"].ToString() != dr["t422_idmoneda_contrato"].ToString()) ) { string sTitle = ""; if ((byte)dr["monedas_proyectos_contrato"] > 1) { sTitle += "Los proyectos asociados al contrato tienen monedas diferentes.<br>"; } if (dr["t306_idcontrato"] != DBNull.Value && dr["t422_idmoneda_proyecto"].ToString() != dr["t422_idmoneda_contrato"].ToString()) { sTitle += "Moneda del contrato: " + dr["t422_denominacion_contrato"].ToString() + "\nMoneda del proyecto: " + dr["t422_denominacion_proyecto"].ToString() + "\n"; } if (dr["ajuste"].ToString() == "1") { if ((string)htAjustes[dr["t301_categoria"].ToString() + dr["t306_idcontrato"].ToString()] == null) { htAjustes.Add(dr["t301_categoria"].ToString() + dr["t306_idcontrato"].ToString(), dr["t301_idproyecto"].ToString() ); } sTitle += "Importe de ajuste: " + decimal.Parse(dr["Importe_Ajuste"].ToString()).ToString("N") + " " + dr["t422_denominacionimportes_proyecto"].ToString(); this.hdnExcepcion.Text = "1"; } sb.Append("<td style=\"border-right:none;text-align:center;\"><img src='../../../Images/imgExclamacion.png' title='" + sTitle + "' /></td>"); } else if (dr["ajuste"].ToString() == "1" && bProcesable) //si hay ajuste y no hay excepción que impida cerrar { if ((string)htAjustes[dr["t301_categoria"].ToString() + dr["t306_idcontrato"].ToString()] == null) { htAjustes.Add(dr["t301_categoria"].ToString() + dr["t306_idcontrato"].ToString(), dr["t301_idproyecto"].ToString() ); sb.Append("<td style=\"border-right:none;text-align:center;\"><img src='../../../Images/imgAjuste2.gif' title='Importe de ajuste: " + decimal.Parse(dr["Importe_Ajuste"].ToString()).ToString("N") + "' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=\"border-right:none;text-align:center;\"></td>"); } } else { sb.Append("<td style=\"border-right:none;text-align:center;\"></td>"); } if (decimal.Parse(dr["t325_consperiod"].ToString()) != 0) { sb.Append("<td style=\"border-right:none;text-align:center;\"><img src='../../../Images/imgConsumoPeriod.gif' title='Consumos periodificados: " + decimal.Parse(dr["t325_consperiod"].ToString()).ToString("N") + "' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td style=\"border-right:none;text-align:center;\"></td>"); } if (decimal.Parse(dr["t325_prodperiod"].ToString()) != 0) { sb.Append("<td style='text-align:center;'><img src='../../../Images/imgProduccionPeriod.gif' title='Producción periodificada: " + decimal.Parse(dr["t325_prodperiod"].ToString()).ToString("N") + "' /></td>"); this.hdnExcepcion.Text = "1"; } else { sb.Append("<td></td>"); } if (dr["t306_idcontrato"].ToString() == "" || dr["t305_cualidad"].ToString() != "C") { sb.Append("<td style='text-align:right;'></td>"); } else { sb.Append("<td style='text-align:right;'>" + int.Parse(dr["t306_idcontrato"].ToString()).ToString("#,###") + "</td>"); } if (dr["t305_cualidad"].ToString() != "C") { sb.Append("<td style='text-align:right;'></td>"); } else { sb.Append("<td style='text-align:right;'>" + decimal.Parse(dr["TotalContrato"].ToString()).ToString("N") + "</td>"); } sb.Append("<td style='text-align:right;'>" + decimal.Parse(dr["TotalProducido"].ToString()).ToString("N") + "</td>"); if (dr["t305_cualidad"].ToString() != "C") { sb.Append("<td style='text-align:right;'></td>"); } else { sb.Append("<td style='text-align:right;'>" + decimal.Parse(dr["TPPAC"].ToString()).ToString("N") + "</td>"); } if (bProcesable) { sb.Append("<td style=\"border-right:none\"><img src='../../../Images/imgMesAbierto.gif' /></td>"); } else { sb.Append("<td style=\"border-right:none;padding-left:3px;text-align:center;\"><img src='../../../Images/imgMesNoProceso.gif' /></td>"); } sb.Append("</tr>"); } dr.Close(); dr.Dispose(); sb.Append("</tbody>"); sb.Append("</table>"); oDT3 = DateTime.Now; nTiempoBD = Fechas.DateDiff("mm", (DateTime)oDT1, (DateTime)oDT2); nTiempoHTML = Fechas.DateDiff("mm", (DateTime)oDT2, (DateTime)oDT3); //Obtengo las alertas producidas por los proyectos a cerrar. //s_idsegmesproy int nAlertas = 0; if (s_idsegmesproy != "") { DataSet ds = SUPER.Capa_Datos.SEGMESPROYECTOSUBNODO.ObtenerDialogosDeAlertasDS(null, s_idsegmesproy, true); Session["DS_ALERTASCIERRE"] = ds; nAlertas = ds.Tables[0].Rows.Count; } oDT4 = DateTime.Now; nTiempoDialogos = Fechas.DateDiff("mm", (DateTime)oDT3, (DateTime)oDT4); return("OK@#@" + sb.ToString() + "@#@" + this.hdnExcepcion.Text + "@#@" + nAlertas.ToString() + "@#@" + nTiempoBD.ToString() + "@#@" + nTiempoHTML.ToString() + "@#@" + nTiempoDialogos.ToString()); } catch (Exception ex) { return("Error@#@" + Errores.mostrarError("Error al obtener los proyectos.", ex)); } }
private string procesarOF(string sAnomes, string strDatos) { string sResul = ""; string sEstadoMes = ""; int nSMP = 0; #region abrir conexión y transacción try { oConn = Conexion.Abrir(); tr = Conexion.AbrirTransaccion(oConn); } catch (Exception ex) { if (oConn.State == ConnectionState.Open) { Conexion.Cerrar(oConn); } return("Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex)); } #endregion try { string[] aOrdenes = Regex.Split(strDatos, "///"); foreach (string oOrden in aOrdenes) { if (oOrden == "") { continue; } //0. t376_iddatoeco //1. t325_idsegmesproy //2. t305_idproyectosubnodo //3. Opcion: B -> Borrado, D -> Decalaje string[] aValores = Regex.Split(oOrden, "##"); if (aValores[3] == "B") { DATOECO.Delete(tr, int.Parse(aValores[0])); } else { //1º Obtener el siguiente idsegmesproy al actual. nSMP = SEGMESPROYECTOSUBNODO.ExisteSegMesProy(tr, int.Parse(aValores[2]), Fechas.AddAnnomes(int.Parse(sAnomes), 1)); if (nSMP == 0) { sEstadoMes = SEGMESPROYECTOSUBNODO.EstadoMesACrear(tr, int.Parse(aValores[2]), Fechas.AddAnnomes(int.Parse(sAnomes), 1)); nSMP = SEGMESPROYECTOSUBNODO.Insert(tr, int.Parse(aValores[2]), Fechas.AddAnnomes(int.Parse(sAnomes), 1), sEstadoMes, 0, 0, false, 0, 0); } DATOECO.UpdateDecalaje(tr, int.Parse(aValores[0]), nSMP); } } Conexion.CommitTransaccion(tr); sResul = "OK@#@"; } catch (Exception ex) { Conexion.CerrarTransaccion(tr); sResul = "Error@#@" + Errores.mostrarError("Error al grabar los datos de avance", ex); } finally { Conexion.Cerrar(oConn); } return(sResul); }