public static string CatalogoGastos(int nIDNota)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("<table id='tblGastos' class='MANO' cellSpacing='0' cellPadding='0' border='0' style='width:970px;text-align:right;' mantenimiento='1'>");
            sb.Append("<colgroup>");
            sb.Append("    <col style='width:130px; ' />"); //Fechas
            sb.Append("    <col style='width:165px; ' />"); //Destino
            sb.Append("    <col style='width:20px; ' />");  //Comentario
            sb.Append("    <col style='width:30px' />");    //C
            sb.Append("    <col style='width:30px' />");    //M
            sb.Append("    <col style='width:30px' />");    //E
            sb.Append("    <col style='width:30px' />");    //A
            sb.Append("    <col style='width:65px' />");    //Importe
            sb.Append("    <col style='width:40px' />");    //Kms.
            sb.Append("    <col style='width:65px' />");    //Importe
            sb.Append("    <col style='width:30px' />");    //ECO
            sb.Append("    <col style='width:65px' />");    //Peajes
            sb.Append("    <col style='width:65px' />");    //Comidas
            sb.Append("    <col style='width:65px' />");    //Transp.
            sb.Append("    <col style='width:65px' />");    //Hoteles
            sb.Append("    <col style='width:75px' />");    //Total
            sb.Append("</colgroup>" + (char)13);

            SqlDataReader dr    = DAL.POSICIONAPARCADA_NEGV.CatalogoGastos(null, nIDNota);
            int           iFila = 0;

            while (dr.Read())
            {
                sb.Append("<tr id='" + iFila + "' bd='' ");
                sb.Append("comentario=\"" + Utilidades.escape(dr["t661_comentariopos"].ToString()) + "\" ");
                sb.Append("eco='" + dr["t615_iddesplazamiento"].ToString() + "' ");
                sb.Append("destino=\"" + Utilidades.escape(dr["t615_destino"].ToString()) + "\" ");
                sb.Append("ida='" + ((dr["t615_fechoraida"].ToString() == "") ? "" : dr["t615_fechoraida"].ToString().Substring(0, dr["t615_fechoraida"].ToString().Length - 3)) + "' ");
                sb.Append("vuelta='" + ((dr["t615_fechoravuelta"].ToString() == "") ? "" : dr["t615_fechoravuelta"].ToString().Substring(0, dr["t615_fechoravuelta"].ToString().Length - 3)) + "' ");
                sb.Append("style=\"height:20px;\" onclick=\"ii(this, event);ms(this,'FG')\">");
                if (dr["t661_fechadesde"].ToString() != "")
                {
                    sb.Append("    <td style='text-align:left'>&nbsp;&nbsp;" + ((DateTime)dr["t661_fechadesde"]).ToShortDateString() + "&nbsp;&nbsp;" + ((DateTime)dr["t661_fechahasta"]).ToShortDateString() + "</td>");//Fechas
                }
                else
                {
                    sb.Append("    <td></td>");
                }
                sb.Append("    <td style='text-align:left;'>" + dr["t661_destino"].ToString() + "</td>");//Destino
                if (dr["t661_comentariopos"].ToString() == "")
                {
                    sb.Append("    <td style='text-align:left;' class='MA'></td>");//Comentario
                }
                else
                {
                    sb.Append("<td style='text-align:left;' class='MA'><img src='../../Images/imgComGastoOn.gif' ");//Comentario
                    sb.Append("title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/imgComGastoOn.gif' style='vertical-align:middle;' />&nbsp;Comentario] ");
                    sb.Append("body=[" + Utilidades.CadenaParaTooltipExtendido(dr["t661_comentariopos"].ToString()) + "] ");
                    sb.Append("hideselects=[off]\" ");
                    sb.Append(" /></td>");                                                                                                                                     //Comentario
                }
                sb.Append("    <td>" + (((byte)dr["t661_ncdieta"] == 0) ? "" : dr["t661_ncdieta"].ToString()) + "</td>");                                                      //C
                sb.Append("    <td>" + (((byte)dr["t661_nmdieta"] == 0) ? "" : dr["t661_nmdieta"].ToString()) + "</td>");                                                      //M
                sb.Append("    <td>" + (((byte)dr["t661_nedieta"] == 0) ? "" : dr["t661_nedieta"].ToString()) + "</td>");                                                      //E
                sb.Append("    <td>" + (((byte)dr["t661_nadieta"] == 0) ? "" : dr["t661_nadieta"].ToString()) + "</td>");                                                      //A
                sb.Append("    <td></td>");                                                                                                                                    //Importe
                sb.Append("    <td>" + (((short)dr["t661_nkms"] == 0) ? "" : short.Parse(dr["t661_nkms"].ToString()).ToString("#,###")) + "</td>");                            //Kms.
                sb.Append("    <td></td>");                                                                                                                                    //Importe
                sb.Append("    <td></td>");                                                                                                                                    //ECO
                //sb.Append("    <td>" + dr["t615_iddesplazamiento"].ToString() + "</td>");//ECO
                sb.Append("    <td>" + ((double.Parse(dr["t661_peajepark"].ToString()) == 0) ? "" : double.Parse(dr["t661_peajepark"].ToString()).ToString("N")) + "</td>");   //Peajes
                sb.Append("    <td>" + ((double.Parse(dr["t661_comida"].ToString()) == 0) ? "" : double.Parse(dr["t661_comida"].ToString()).ToString("N")) + "</td>");         //Comidas
                sb.Append("    <td>" + ((double.Parse(dr["t661_transporte"].ToString()) == 0) ? "" : double.Parse(dr["t661_transporte"].ToString()).ToString("N")) + "</td>"); //Transp.
                sb.Append("    <td>" + ((double.Parse(dr["t661_hotel"].ToString()) == 0) ? "" : double.Parse(dr["t661_hotel"].ToString()).ToString("N")) + "</td>");           //Hoteles
                sb.Append("    <td></td>");                                                                                                                                    //Total
                sb.Append("</tr>" + (char)13);

                iFila++;
            }
            dr.Close();
            dr.Dispose();

            do
            {
                sb.Append("<tr id='" + iFila + "' bd='' eco='' ");
                sb.Append("comentario=\"\" ");
                sb.Append("eco='' ");
                sb.Append("destino=\"\" ");
                sb.Append("ida='' ");
                sb.Append("vuelta='' ");
                sb.Append("style=\"height:20px;\" onclick=\"ii(this,event);ms(this,'FG')\">");
                sb.Append("    <td></td>");            //Fechas
                sb.Append("    <td></td>");            //Destino
                sb.Append("    <td class='MA'></td>"); //Comentario
                sb.Append("    <td></td>");            //C
                sb.Append("    <td></td>");            //M
                sb.Append("    <td></td>");            //E
                sb.Append("    <td></td>");            //A
                sb.Append("    <td></td>");            //Importe
                sb.Append("    <td></td>");            //Kms.
                sb.Append("    <td></td>");            //Importe
                sb.Append("    <td></td>");            //ECO
                sb.Append("    <td></td>");            //Peajes
                sb.Append("    <td></td>");            //Comidas
                sb.Append("    <td></td>");            //Transp.
                sb.Append("    <td></td>");            //Hoteles
                sb.Append("    <td></td>");            //Total
                sb.Append("</tr>" + (char)13);

                iFila++;
            } while (iFila < 15);

            sb.Append("</table>");

            return(sb.ToString());
        }
Exemple #2
0
        public static string obtenerPersonas(string sApellido1, string sApellido2, string sNombre, string sExcluidos)
        {
            StringBuilder sb = new StringBuilder();
            SqlDataReader dr = DAL.AUTORRESPONSABLE.CatalogoPersonas(Utilidades.unescape(sApellido1), Utilidades.unescape(sApellido2), Utilidades.unescape(sNombre), sExcluidos, false);

            sb.Append("<table id='tblPersonas' class='MAM W398' mantenimiento='1'>");
            sb.Append("<colgroup>");
            sb.Append("    <col style='width:20px;' />");
            sb.Append("    <col style='width:378px;' />");
            sb.Append("</colgroup>");
            sb.Append("<tbody id='tbodyDestino'>");
            while (dr.Read())
            {
                sb.Append("<tr id='" + dr["t001_idficepi"].ToString() + "' ");
                sb.Append("tipo='" + dr["t001_tiporecurso"].ToString() + "' bd='' ");
                sb.Append("sexo='" + dr["t001_sexo"].ToString() + "' ");
                sb.Append("onClick='mm(event)' ");
                sb.Append("ondblclick='anadirConvocados();' ");
                sb.Append("onmouseover='TTip(event);' ");
                sb.Append("onmousedown=\"DD(event);\"' style='height:20px'>");
                sb.Append("<td></td>");
                sb.Append("<td><nobr class='NBR W350'>" + Utilidades.unescape(dr["nombre"].ToString()) + "</nobr></td>");
                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();

            sb.Append("</tbody>");
            sb.Append("</table>");

            return(sb.ToString());
        }
        public static string obtenerResponsables(string sAp1, string sAp2, string sNombre, string sMostrarBajas)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("<table id='tblCatRes' style='width:500px;'>");
            sb.Append("<colgroup>");
            sb.Append("    <col style='width:20px;' />");
            sb.Append("    <col style='width:480px; padding-left:3px;' />");
            sb.Append("</colgroup>");

            SqlDataReader dr = DAL.ACUERDOGV.CatalogoResponsablesProyecto(Utilidades.unescape(sAp1), Utilidades.unescape(sAp2), Utilidades.unescape(sNombre), (sMostrarBajas == "1") ? true : false);

            while (dr.Read())
            {
                sb.Append("<tr id='" + dr["idusuario"].ToString() + "' ");
                sb.Append("idficepi='" + dr["t001_idficepi"].ToString() + "' style='height:20px;'");

                if ((int)dr["es_responsable"] == 0)
                {
                    sb.Append("><td><img src='../../images/imgResponsable.gif' style='filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30)' width='16px' height='16px' /></td>");
                    sb.Append("<td style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/info.gif' style='vertical-align:middle' />  ");
                    sb.Append("Información] body=[<label style='width:70px;'>Profesional:</label>");
                    sb.Append(dr["Profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>");
                    sb.Append(int.Parse(dr["idusuario"].ToString()).ToString("#,###") + "<br><label style='width:70px;'>");
                    sb.Append(Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>");
                    sb.Append(dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "<br>");
                    sb.Append("<label style='width:70px;'>Empresa:</label>" + dr["empresa"].ToString().Replace((char)34, (char)39));
                    sb.Append("] hideselects=[off]\">" + dr["profesional"].ToString() + "</td>");
                }
                else
                {
                    sb.Append(" class='MA' ondblclick=\"aceptarClick(this)\"><td><img src='../../images/imgResponsable.gif' width='16px' height='16px' /></td>");
                    sb.Append("<td style='noWrap:true;' ondblclick=\"aceptarClick(this)\" ");
                    sb.Append("title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/info.gif' style='vertical-align:middle' />  ");
                    sb.Append("Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["Profesional"].ToString().Replace((char)34, (char)39));
                    sb.Append("<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["idusuario"].ToString()).ToString("#,###"));
                    sb.Append("<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>");
                    sb.Append(dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Empresa:</label>");
                    sb.Append(dr["empresa"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\">" + dr["profesional"].ToString());
                    sb.Append("</td>");
                }
                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</table>");
            return(sb.ToString());
        }
        public static string Grabar(string sAc, string sProf, string sProy, string sCR)
        {
            string         sResul = "", sElementosInsertados = "", sElementosInsertados2 = "", sElementosInsertados3 = "", sElementosInsertados4 = "";
            SqlConnection  oConn = null;
            SqlTransaction tr = null;
            int            nAux = 0, nDel = 0, nIdAc = -1;
            string         sNewAc           = "";
            bool           bErrorControlado = false;

            #region abrir conexión y transacción
            try
            {
                oConn = Conexion.Abrir();
                tr    = Conexion.AbrirTransaccionSerializable(oConn);
            }
            catch (Exception)
            {
                if (oConn.State == ConnectionState.Open)
                {
                    Conexion.Cerrar(oConn);
                }
                throw (new Exception("Error al abrir la conexión."));
            }
            #endregion

            try
            {
                #region Acuerdos
                if (sAc != "")
                {
                    //Con la cadena generamos una lista y la recorremos para grabar cada elemento
                    string[] aAcGrabar = Regex.Split(sAc, "#sFin#");
                    for (int i = 0; i <= aAcGrabar.Length - 1; i++)
                    {
                        string[] aElemAc = Regex.Split(aAcGrabar[i], "#sCad#");
                        switch (aElemAc[0])
                        {
                        case "I":
                            nAux = DAL.ACUERDOGV.InsertAcuerdo(tr,
                                                               Utilidades.unescape(aElemAc[2].ToString()),
                                                               int.Parse(aElemAc[3]),
                                                               Utilidades.unescape(aElemAc[4].ToString()),
                                                               DateTime.Parse(aElemAc[5]),
                                                               DateTime.Parse(aElemAc[6]),
                                                               int.Parse(aElemAc[7]),
                                                               DateTime.Parse(aElemAc[8]),
                                                               aElemAc[9].ToString());
                            if (sElementosInsertados == "")
                            {
                                sElementosInsertados = nAux.ToString();
                                sNewAc = aElemAc[1] + "#sCad#" + nAux.ToString();
                            }
                            else
                            {
                                sElementosInsertados += "#sCad#" + nAux.ToString();
                                sNewAc += "#sFin#" + aElemAc[1] + "#sCad#" + nAux.ToString();
                            }
                            break;

                        case "D":
                            nDel = DAL.ACUERDOGV.DeleteAcuerdo(tr, int.Parse(aElemAc[1]));
                            if (nDel == 0)
                            {
                                bErrorControlado = true;
                                throw (new Exception("Operacion rechazada! Existen usuarios asignados a ese acuerdo."));
                            }
                            break;

                        case "U":
                            DAL.ACUERDOGV.UpdateAcuerdo(tr,
                                                        int.Parse(aElemAc[1]),
                                                        Utilidades.unescape(aElemAc[2].ToString()),
                                                        int.Parse(aElemAc[3]),
                                                        Utilidades.unescape(aElemAc[4].ToString()),
                                                        DateTime.Parse(aElemAc[5]),
                                                        DateTime.Parse(aElemAc[6]),
                                                        int.Parse(aElemAc[7]),
                                                        DateTime.Parse(aElemAc[8]),
                                                        aElemAc[9].ToString());
                            break;
                        }
                    }
                }
                sElementosInsertados = sNewAc + "@#@";
                #endregion

                #region Profesionales
                if (sProf != "")
                {
                    //Con la cadena generamos una lista y la recorremos para grabar cada elemento
                    string[] aProfGrabar = Regex.Split(sProf, "#sFin#");
                    for (int i = 0, iCountLoop = aProfGrabar.Length - 1; i <= iCountLoop; i++)
                    {
                        string[] aElemProf = Regex.Split(aProfGrabar[i], "#sCad#");
                        switch (aElemProf[0])
                        {
                        case "I":
                            if (int.Parse(aElemProf[1]) >= 30000)    // 30000 este es el valor mínimo que se le ha indicado a todas las filas nuevas
                            {
                                string[] aNewAc = Regex.Split(sNewAc, "#sFin#");
                                for (int j = 0, nCountLoop = aNewAc.Length - 1; j <= nCountLoop; j++)
                                {
                                    string[] sElemNewAc = Regex.Split(aNewAc[j], "#sCad#");
                                    if (sElemNewAc[0] == aElemProf[1])
                                    {
                                        nIdAc = int.Parse(sElemNewAc[1]);
                                        break;
                                    }
                                }
                            }
                            nAux = DAL.ACUERDOGV.InsertProfesional(tr,
                                                                   (nIdAc != -1) ? nIdAc : int.Parse(aElemProf[1]),
                                                                   int.Parse(aElemProf[2]));
                            nIdAc = -1;
                            if (sElementosInsertados2 == "")
                            {
                                sElementosInsertados2 = aElemProf[2];
                            }
                            else
                            {
                                sElementosInsertados2 += "#sCad#" + aElemProf[2];
                            }

                            break;

                        case "D":
                            DAL.ACUERDOGV.DeleteProfesional(tr,
                                                            int.Parse(aElemProf[1]),
                                                            int.Parse(aElemProf[2]));
                            break;
                        }
                    }
                }
                sElementosInsertados += sElementosInsertados2;
                #endregion

                #region Proyectos
                if (sProy != "")
                {
                    //Con la cadena generamos una lista y la recorremos para grabar cada elemento
                    string[] aProyGrabar = Regex.Split(sProy, "#sFin#");
                    for (int i = 0; i <= aProyGrabar.Length - 1; i++)
                    {
                        string[] aElemProy = Regex.Split(aProyGrabar[i], "#sCad#");
                        switch (aElemProy[0])
                        {
                        case "I":
                            if (int.Parse(aElemProy[1]) >= 30000)    // 30000 este es el valor mínimo que se le ha indicado a todas las filas nuevas
                            {
                                string[] aNewAc = Regex.Split(sNewAc, "#sFin#");
                                for (int j = 0, nCountLoop = aNewAc.Length - 1; j <= nCountLoop; j++)
                                {
                                    string[] sElemNewAc = Regex.Split(aNewAc[j], "#sCad#");
                                    if (sElemNewAc[0] == aElemProy[1])
                                    {
                                        nIdAc = int.Parse(sElemNewAc[1]);
                                        break;
                                    }
                                }
                            }
                            nAux = DAL.ACUERDOGV.InsertProyecto(tr,
                                                                (nIdAc != -1) ? nIdAc : int.Parse(aElemProy[1]),
                                                                int.Parse(aElemProy[2]));
                            nIdAc = -1;
                            if (sElementosInsertados3 == "")
                            {
                                sElementosInsertados3 = aElemProy[2];
                            }
                            else
                            {
                                sElementosInsertados3 += "#sCad#" + aElemProy[2];
                            }
                            break;

                        case "D":
                            DAL.ACUERDOGV.DeleteProyecto(tr,
                                                         int.Parse(aElemProy[1]),
                                                         int.Parse(aElemProy[2]));
                            break;
                        }
                    }
                }
                sElementosInsertados += "@#@" + sElementosInsertados3;
                #endregion

                #region CR
                if (sCR != "")
                {
                    //Con la cadena generamos una lista y la recorremos para grabar cada elemento
                    string[] aCRGrabar = Regex.Split(sCR, "#sFin#");
                    for (int i = 0; i <= aCRGrabar.Length - 1; i++)
                    {
                        string[] aElemCR = Regex.Split(aCRGrabar[i], "#sCad#");
                        switch (aElemCR[0])
                        {
                        case "I":
                            if (int.Parse(aElemCR[1]) >= 30000)    // 30000 este es el valor mínimo que se le ha indicado a todas las filas nuevas
                            {
                                string[] aNewAc = Regex.Split(sNewAc, "#sFin#");
                                for (int j = 0, nCountLoop = aNewAc.Length - 1; j <= nCountLoop; j++)
                                {
                                    string[] sElemNewAc = Regex.Split(aNewAc[j], "#sCad#");
                                    if (sElemNewAc[0] == aElemCR[1])
                                    {
                                        nIdAc = int.Parse(sElemNewAc[1]);
                                        break;
                                    }
                                }
                            }
                            nAux = DAL.ACUERDOGV.InsertCR(tr,
                                                          (nIdAc != -1) ? nIdAc : int.Parse(aElemCR[1]),
                                                          int.Parse(aElemCR[2]));
                            nIdAc = -1;

                            if (sElementosInsertados4 == "")
                            {
                                sElementosInsertados4 = aElemCR[2];
                            }
                            else
                            {
                                sElementosInsertados4 += "#sCad#" + aElemCR[2];
                            }
                            break;

                        case "D":
                            DAL.ACUERDOGV.DeleteCR(tr,
                                                   int.Parse(aElemCR[1]),
                                                   int.Parse(aElemCR[2]));
                            break;
                        }
                    }
                }
                sElementosInsertados += "@#@" + sElementosInsertados4;
                #endregion

                Conexion.CommitTransaccion(tr);
            }
            catch (Exception ex)
            {
                Conexion.CerrarTransaccion(tr);
                if (bErrorControlado)
                {
                    sResul = ex.Message;
                }
                else
                {
                    sResul = Errores.mostrarError("Error al grabar el acuerdo.", ex);
                }
            }
            finally
            {
                Conexion.Cerrar(oConn);
                if (sResul != "")
                {
                    throw (new Exception(sResul));
                }
            }
            return(sElementosInsertados);
        }
        public static string obtenerProyectos(string sNodo, string sEstado, string sCategoria, string sIdCliente, string sIdResponsable,
                                              string sNumPE, string sDesPE, string sTipoBusqueda)
        {
            StringBuilder sb            = new StringBuilder();
            int?          idNodo        = null;
            int?          idCliente     = null;
            int?          idResponsable = null;
            int?          numPE         = null;

            if (sNodo != "")
            {
                idNodo = int.Parse(sNodo);
            }
            if (sIdCliente != "")
            {
                idCliente = int.Parse(sIdCliente);
            }
            if (sIdResponsable != "")
            {
                idResponsable = int.Parse(sIdResponsable);
            }
            if (sNumPE != "" && sNumPE != "0")
            {
                numPE = int.Parse(sNumPE);
            }

            sb.Append("<table id='tblCatProy' class='MA' style='width:940px;' cellpadding ='0' mantenimiento='1'>");
            sb.Append("<colgroup>");
            sb.Append("     <col style='width:20px;' />");
            sb.Append("     <col style='width:20px;' />");
            sb.Append("     <col style='width:80px;' />");
            sb.Append("     <col style='width:355px;' />");
            sb.Append("     <col style='width:220px;' />");
            sb.Append("     <col style='width:260px;' />");
            sb.Append("</colgroup>");
            SqlDataReader dr = DAL.ACUERDOGV.CatalogoProyectos(idNodo, sEstado, sCategoria, idCliente, idResponsable, numPE,
                                                               Utilidades.unescape(sDesPE), sTipoBusqueda);

            while (dr.Read())
            {
                sb.Append("<tr style='height:20px' id='" + dr["t301_idproyecto"].ToString() + "' ");

                sb.Append("categoria='" + dr["t301_categoria"].ToString() + "' ");
                sb.Append("estado='" + dr["t301_estado"].ToString() + "' ");
                sb.Append("idPSN='" + dr["t305_idproyectosubnodo"].ToString() + "' ");
                sb.Append("resp='" + dr["Responsable"].ToString() + "' ");
                sb.Append("cr='" + dr["t303_denominacion"].ToString() + "' ");
                sb.Append(">");

                sb.Append("<td></td>");
                sb.Append("<td></td>");
                sb.Append("<td style='text-align:right; padding-right:3px'>");
                sb.Append(int.Parse(dr["t301_idproyecto"].ToString()).ToString("#,###") + "</td>");

                sb.Append("<td><nobr class='NBR W340' title=\"cssbody=[dvbdy] cssheader=[dvhdr] ");
                sb.Append("header=[<img src='../../images/info.gif' style='vertical-align:middle' />  Información]");
                sb.Append("body=[<label style='width:70px;'>Proyecto:</label>" + dr["t301_denominacion"].ToString().Replace((char)34, (char)39) + "<br>");
                sb.Append("<label style='width:70px;'>Responsable:</label>" + dr["Responsable"].ToString().Replace((char)34, (char)39) + "] ");
                sb.Append("hideselects=[off]\">" + dr["t301_denominacion"].ToString().Replace((char)34, (char)39) + "</nobr></td>");

                sb.Append("<td onmouseover='TTip(event)'><nobr class='NBR W210'>" + dr["t302_denominacion"].ToString() + "</nobr></td>");
                sb.Append("<td onmouseover='TTip(event)'><nobr class='NBR W250'>" + dr["t303_denominacion"].ToString() + "</nobr></td>");
                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</table>");

            return(sb.ToString());
        }
        public static string CatalogoMotivo()
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("<table id='tblMotivos' class='MANO W680' mantenimiento='1'>");
            sb.Append("<colgroup>");
            sb.Append("    <col style='width:20px;' />");
            sb.Append("    <col style='width:220px; ' />");
            sb.Append("    <col style='width:60px; ' />");
            sb.Append("    <col style='width:75px; ' />");
            sb.Append("    <col style='width:285px;' />");
            sb.Append("    <col style='width:20px; ' />");
            sb.Append("</colgroup>");

            SqlDataReader dr = DAL.MOTIVO.ObtenerMotivos(null);

            while (dr.Read())
            {
                sb.Append("<tr id='" + dr["t423_idmotivo"].ToString() + "' ");
                sb.Append("idcencos='" + dr["t175_idcc"].ToString() + "' ");
                //sb.Append("descencos='" + Utilidades.unescape(dr["t317_denominacion"].ToString()) + "' ");
                sb.Append("bd='' ");
                sb.Append("leido='0' ");
                sb.Append("style='height:20px' ");
                sb.Append("onClick='ms(this); visualizarTablas(this);' ");
                sb.Append("onmouseover='TTip(event);' ");
                sb.Append("> ");
                sb.Append("<td style='padding:0px;padding-left:2px;'><img src='../../../images/imgFN.gif'></td>");
                sb.Append("<td style='padding:0px; padding-left:2px; '><input id='descrip" + dr["t423_idmotivo"].ToString() + "' class='txtL' type='text' style='width:215px;' onkeyup='fm(event);activarGrabar();' value=\"");
                sb.Append(Utilidades.unescape(dr["t423_denominacion"].ToString()) + "\" />");
                sb.Append("<td style='padding:0px;padding-left:2px;'><input type='checkbox' style='width:15px;' id='chkEstado" + dr["t423_idmotivo"].ToString() + "' onclick='fm(event);activarGrabar();' class='checkTabla'");
                if ((bool)dr["t423_estado"])
                {
                    sb.Append(" checked='true' ");
                }
                sb.Append("/></td>");
                sb.Append("<td style='padding:0px;padding-right:10px;'><input id='cuenta" + dr["t423_idmotivo"].ToString() + "' type='text' style='width:65px;' class='txtNumL' onfocus='fn(this,9,0)' onkeyup='fm(event);activarGrabar();' value=\"");
                sb.Append(Utilidades.unescape(dr["t423_cuenta"].ToString()) + "\" />");
                if (dr["t423_idmotivo"].ToString() != "1")
                {
                    sb.Append("<td style='padding:0px;padding-left:2px;' id='cencos" + dr["t423_idmotivo"].ToString() + "' onclick='mostrarCenCos(this.parentNode);'");
                    //sb.Append("<input id='cencos" + dr["t423_idmotivo"].ToString() + "' class='txtL' type='text' style='width:275px;' onclick='mostrarCenCos(this.parentNode.parentNode);' ReadOnly='true' value=\"");
                    if (dr["t175_idcc"].ToString() != "")
                    {
                        sb.Append("class=''>" + dr["t175_idcc"].ToString() + " - " + Utilidades.unescape(dr["t175_denominacion"].ToString()));
                    }
                    else
                    {
                        sb.Append("class='OPC'>");
                    }
                    //sb.Append("\" />");
                }
                else
                {
                    sb.Append("<td style='padding:0px;padding-left:2px;'>");
                }
                sb.Append("</td>");
                sb.Append("<td style='padding:0px;padding-left:2px;'>");
                if (dr["t423_idmotivo"].ToString() != "1")
                {
                    sb.Append("<img id='gomaNodo' src='../../../Images/Botones/imgBorrar.gif' border='0' onclick='borrarCenCos(this.parentNode.parentNode);' style='cursor:pointer; vertical-align:middle;' runat='server'>");
                }
                sb.Append("</td>");
                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</table>");

            return(sb.ToString());
        }
        public static void Grabar(string sMotivos, string sAprobadores)
        {
            string         sResul = "";
            SqlConnection  oConn  = null;
            SqlTransaction tr     = null;

            #region abrir conexión y transacción
            try
            {
                oConn = Conexion.Abrir();
                tr    = Conexion.AbrirTransaccion(oConn);
            }
            catch (Exception)
            {
                if (oConn.State == ConnectionState.Open)
                {
                    Conexion.Cerrar(oConn);
                }
                throw (new Exception("Error al abrir la conexión."));
            }
            #endregion

            try
            {
                if (sMotivos != "")
                {
                    //Con la cadena generamos una lista y la recorremos para grabar cada elemento
                    string[] aDatosMo = Regex.Split(sMotivos, "#sFin#");
                    for (int i = 0; i <= aDatosMo.Length - 1; i++)
                    {
                        string[] aElem = Regex.Split(aDatosMo[i], "#sCad#");
                        DAL.MOTIVO.UpdateMotivo(tr,
                                                short.Parse(aElem[0]),
                                                Utilidades.unescape(aElem[1].ToString()),
                                                short.Parse(aElem[2]),
                                                int.Parse(aElem[3].Replace(".", "")),
                                                (aElem[4].ToString() == "") ? null : aElem[4].ToString());
                    }
                }
                if (sAprobadores != "")
                {
                    string[] aDatosAp = Regex.Split(sAprobadores, "#sFin#");
                    for (int i = 0; i <= aDatosAp.Length - 1; i++)
                    {
                        string[] aElem2 = Regex.Split(aDatosAp[i], "#sCad#");
                        switch (aElem2[0])
                        {
                        case "I":
                            DAL.MOTIVO.InsertAprobadores(tr, short.Parse(aElem2[1]), int.Parse(aElem2[2]));
                            break;

                        case "D":
                            DAL.MOTIVO.DeleteAprobadores(tr, short.Parse(aElem2[1]), int.Parse(aElem2[2]));
                            break;
                        }
                    }
                }
                Conexion.CommitTransaccion(tr);
            }
            catch (Exception ex)
            {
                Conexion.CerrarTransaccion(tr);
                sResul = Errores.mostrarError("Error al grabar los motivos y sus aprobadores.", ex);
            }
            finally
            {
                Conexion.Cerrar(oConn);
                if (sResul != "")
                {
                    throw (new Exception(sResul));
                }
            }
        }
        public static string CatalogoEstructura()
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("<table id='tblEstrutura' class='W600' mantenimiento='1'>");
            sb.Append("<colgroup>");
            sb.Append("    <col style='width:20px; padding-left:2px;' />");
            sb.Append("    <col style='width:20px; padding-left:2px;' />");
            sb.Append("    <col style='width:200px; padding-left:4px;' />");
            sb.Append("    <col style='width:20px; padding-left:2px;' />");
            sb.Append("    <col style='width:150px; padding-left:4px;' />");
            sb.Append("    <col style='width:170px; padding-left:2px;' />");
            sb.Append("    <col style='width:20px;' />");
            sb.Append("</colgroup>" + (char)13);

            SqlDataReader dr       = DAL.CentrosCoste.CatalogoEstructura();
            int           i        = 0;
            string        sTootTip = "";

            while (dr.Read())
            {
                if (Utilidades.EstructuraActiva("SN4"))
                {
                    sTootTip = "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO4) + ":</label> " + dr["DES_SN4"].ToString() + "<br>";
                }
                if (Utilidades.EstructuraActiva("SN3"))
                {
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO3) + ":</label> " + dr["DES_SN3"].ToString() + "<br>";
                }
                if (Utilidades.EstructuraActiva("SN2"))
                {
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO2) + ":</label> " + dr["DES_SN2"].ToString() + "<br>";
                }
                if (Utilidades.EstructuraActiva("SN1"))
                {
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO1) + ":</label> " + dr["DES_SN1"].ToString() + "<br>";
                }
                sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label> " + dr["t303_denominacion"].ToString();

                sb.Append("<tr id='" + i + "' ");
                sb.Append("idnodo='" + dr["t303_idnodo"].ToString() + "' ");
                sb.Append("idsubnodo='" + dr["t304_idsubnodo"].ToString() + "' ");
                sb.Append("representativo='" + dr["t303_representativo"].ToString() + "' ");
                sb.Append("idcencos='");
                if (dr["t175_idcc"] != DBNull.Value)
                {
                    sb.Append(dr["t175_idcc"].ToString());
                }
                sb.Append("' ");
                sb.Append("bd='' ");
                if (int.Parse(dr["t303_representativo"].ToString()) == 1 || int.Parse(dr["t304_idsubnodo"].ToString()) != 0)
                {
                    sb.Append("onClick='ms(this); CatalogoCentrosCoste(" + int.Parse(dr["t303_idnodo"].ToString()) + "," + int.Parse(dr["t304_idsubnodo"].ToString()) + ");' ");
                }
                sb.Append("style='height:20px; ");
                if (int.Parse(dr["t303_representativo"].ToString()) == 1 || int.Parse(dr["t304_idsubnodo"].ToString()) != 0)
                {
                    sb.Append("cursor:pointer;'>");
                }
                else
                {
                    sb.Append("'>");
                }
                sb.Append("<td><img src='../../../images/imgFN.gif'></td>");
                sb.Append("<td></td>");
                sb.Append("<td>");
                if (int.Parse(dr["t303_representativo"].ToString()) == 1 || int.Parse(dr["t304_idsubnodo"].ToString()) == 0)
                {
                    sb.Append("<nobr class='NBR W190' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../Images/info.gif' style='vertical-align:middle'>  Estructura] body=[" + sTootTip + "] hideselects=[off]\">" + dr["t303_denominacion"].ToString() + "</nobr>");
                }
                sb.Append("</td>");
                sb.Append("<td></td>");
                sb.Append("<td onmouseover='TTip(event)'><nobr class='NBR W140'>" + dr["t304_denominacion"].ToString() + "</nobr></td>");
                sb.Append("<td onmouseover='TTip(event)'><nobr class='NBR W160'>");
                if (int.Parse(dr["t303_representativo"].ToString()) == 1 || int.Parse(dr["t304_idsubnodo"].ToString()) != 0)
                {
                    if (dr["t175_idcc"] != DBNull.Value)
                    {
                        sb.Append(dr["t175_idcc"].ToString() + " - " + dr["t175_denominacion"].ToString());
                    }
                }
                sb.Append("</nobr></td>");
                if (int.Parse(dr["t303_representativo"].ToString()) == 1 || int.Parse(dr["t304_idsubnodo"].ToString()) != 0)
                {
                    if (dr["t175_idcc"] != DBNull.Value)
                    {
                        sb.Append("<td><img id='gomaCenCos" + i + "' src='../../../Images/Botones/imgBorrar.gif' border='0' onclick='borrarCenCos(" + i + ");' style='filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100); cursor:pointer; vertical-align:middle;' runat='server'></td>");
                    }
                    else
                    {
                        sb.Append("<td><img id='gomaCenCos" + i + "' src='../../../Images/Botones/imgBorrar.gif' border='0' style='filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30); cursor:not-allowed; vertical-align:middle;' runat='server'></td>");
                    }
                }
                else
                {
                    sb.Append("<td></td>");
                }
                sb.Append("</tr>" + (char)13);
                i++;
                sTootTip = "";
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</table>");

            return(sb.ToString());
        }
Exemple #9
0
        public static string CatalogoGastos(int nIDNota)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("<table id='tblGastos' class='MANO' cellpadding='0' style='width:970px;text-align:right;' mantenimiento='1'>");
            sb.Append("<colgroup>");
            sb.Append("    <col style='width:130px;' />");  //Fechas
            sb.Append("    <col style='width:165px; ' />"); //Destino
            sb.Append("    <col style='width:70px; ' />");  //Proyecto
            sb.Append("    <col style='width:20px; ' />");  //Comentario
            sb.Append("    <col style='width:25px' />");    //C
            sb.Append("    <col style='width:25px' />");    //M
            sb.Append("    <col style='width:25px' />");    //E
            sb.Append("    <col style='width:25px' />");    //A
            sb.Append("    <col style='width:65px' />");    //Importe
            sb.Append("    <col style='width:40px' />");    //Kms.
            sb.Append("    <col style='width:65px' />");    //Importe
            sb.Append("    <col style='width:30px' />");    //ECO
            sb.Append("    <col style='width:55px' />");    //Peajes
            sb.Append("    <col style='width:55px' />");    //Comidas
            sb.Append("    <col style='width:55px' />");    //Transp.
            sb.Append("    <col style='width:55px' />");    //Hoteles
            sb.Append("    <col style='width:65px' />");    //Total
            sb.Append("</colgroup>" + (char)13);

            SqlDataReader dr    = DAL.POSICIONAPARCADA_NMPGV.CatalogoGastos(null, nIDNota);
            int           iFila = 0;

            while (dr.Read())
            {
                sb.Append("<tr id='" + iFila + "' bd='' ");
                sb.Append("idPSN='" + dr["t305_idproyectosubnodo"].ToString() + "' ");
                sb.Append("comentario=\"" + Utilidades.escape(dr["t664_comentariopos"].ToString()) + "\" ");
                sb.Append("eco='" + dr["t615_iddesplazamiento"].ToString() + "' ");
                sb.Append("destino=\"" + Utilidades.escape(dr["t615_destino"].ToString()) + "\" ");
                sb.Append("ida='" + ((dr["t615_fechoraida"].ToString() == "") ? "" : dr["t615_fechoraida"].ToString().Substring(0, dr["t615_fechoraida"].ToString().Length - 3)) + "' ");
                sb.Append("vuelta='" + ((dr["t615_fechoravuelta"].ToString() == "") ? "" : dr["t615_fechoravuelta"].ToString().Substring(0, dr["t615_fechoravuelta"].ToString().Length - 3)) + "' ");

                sb.Append("style=\"height:20px;\" onclick=\"ii(this,event);ms(this,'FG');setProyReq(this);\">");
                if (dr["t664_fechadesde"] != DBNull.Value)
                {
                    sb.Append("    <td style='text-align:left'>&nbsp;&nbsp;" + ((DateTime)dr["t664_fechadesde"]).ToShortDateString() + "&nbsp;&nbsp;" + ((DateTime)dr["t664_fechahasta"]).ToShortDateString() + "</td>");//Fechas
                }
                else
                {
                    sb.Append("    <td></td>");
                }
                sb.Append("    <td style='text-align:left;'>" + dr["t664_destino"].ToString() + "</td>");//Destino
                if (dr["t305_idproyectosubnodo"].ToString() != "")
                {
                    // sb.Append("    <td>" + int.Parse(dr["t301_idproyecto"].ToString()).ToString("#,###") + "</td>");//Proyecto
                    sb.Append("<td style='text-align:right;'><nobr class='NBR W65 MA' ondblclick='setProyectoGasto(this.parentNode)' onselectstart='return false;' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/info.gif' style='vertical-align:middle;margin-right:15px;' />Informaci&oacute;n] body=[<label style='width:70px;'>Proyecto:</label>" + dr["t305_seudonimo"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Responsable:</label>" + dr["Responsable_Proyecto"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>" + ((dr["Sexo_Aprobador"].ToString() == "V") ? "Aprobador" : "Aprobadora") + ":</label>" + dr["Aprobador"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Cliente:</label>" + dr["t302_denominacion"].ToString() + "] hideselects=[off]\">" + int.Parse(dr["t301_idproyecto"].ToString()).ToString("#,###") + "</nobr></td>");
                }
                else
                {
                    sb.Append("    <td class='MA' style=\"background-image:url(../../images/imgRequerido.gif);background-repeat:no-repeat;text-align:right;\"></td>");//Proyecto
                }
                if (dr["t664_comentariopos"].ToString() == "")
                {
                    sb.Append("    <td class='MA' style='text-align:left;'></td>");//Comentario
                }
                else
                {
                    sb.Append("<td class='MA' style='text-align:left;'><img src='../../Images/imgComGastoOn.gif' ");//Comentario
                    sb.Append("title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/imgComGastoOn.gif' style='vertical-align:middle;' />&nbsp;Comentario] ");
                    sb.Append("body=[" + Utilidades.CadenaParaTooltipExtendido(dr["t664_comentariopos"].ToString()) + "] ");
                    sb.Append("hideselects=[off]\" ");
                    sb.Append(" /></td>");                                                                                                                                     //Comentario
                }
                sb.Append("    <td>" + (((byte)dr["t664_ncdieta"] == 0) ? "" : dr["t664_ncdieta"].ToString()) + "</td>");                                                      //C
                sb.Append("    <td>" + (((byte)dr["t664_nmdieta"] == 0) ? "" : dr["t664_nmdieta"].ToString()) + "</td>");                                                      //M
                sb.Append("    <td>" + (((byte)dr["t664_nedieta"] == 0) ? "" : dr["t664_nedieta"].ToString()) + "</td>");                                                      //A
                sb.Append("    <td>" + (((byte)dr["t664_nadieta"] == 0) ? "" : dr["t664_nadieta"].ToString()) + "</td>");                                                      //E
                sb.Append("    <td></td>");                                                                                                                                    //Importe
                sb.Append("    <td>" + (((short)dr["t664_nkms"] == 0) ? "" : short.Parse(dr["t664_nkms"].ToString()).ToString("#,###")) + "</td>");                            //Kms.
                sb.Append("    <td></td>");                                                                                                                                    //Importe
                sb.Append("    <td></td>");                                                                                                                                    //ECO
                //sb.Append("    <td>" + dr["t615_iddesplazamiento"].ToString() + "</td>");//ECO
                sb.Append("    <td>" + ((double.Parse(dr["t664_peajepark"].ToString()) == 0) ? "" : double.Parse(dr["t664_peajepark"].ToString()).ToString("N")) + "</td>");   //Peajes
                sb.Append("    <td>" + ((double.Parse(dr["t664_comida"].ToString()) == 0) ? "" : double.Parse(dr["t664_comida"].ToString()).ToString("N")) + "</td>");         //Comidas
                sb.Append("    <td>" + ((double.Parse(dr["t664_transporte"].ToString()) == 0) ? "" : double.Parse(dr["t664_transporte"].ToString()).ToString("N")) + "</td>"); //Transp.
                sb.Append("    <td>" + ((double.Parse(dr["t664_hotel"].ToString()) == 0) ? "" : double.Parse(dr["t664_hotel"].ToString()).ToString("N")) + "</td>");           //Hoteles
                sb.Append("    <td></td>");                                                                                                                                    //Total
                sb.Append("</tr>" + (char)13);

                iFila++;
            }
            dr.Close();
            dr.Dispose();

            do
            {
                sb.Append("<tr id='" + iFila + "' bd='' eco='' ");
                sb.Append("idPSN='' ");
                sb.Append("comentario=\"\" ");
                sb.Append("eco='' ");
                sb.Append("destino=\"\" ");
                sb.Append("ida='' ");
                sb.Append("vuelta='' ");
                sb.Append("style=\"height:20px;\" onclick=\"ii(this,event);ms(this,'FG');setProyReq(this);\">");
                sb.Append("    <td></td>");            //Fechas
                sb.Append("    <td></td>");            //Destino
                sb.Append("    <td class='MA'></td>"); //Proyecto
                sb.Append("    <td class='MA'></td>"); //Comentario
                sb.Append("    <td></td>");            //C
                sb.Append("    <td></td>");            //M
                sb.Append("    <td></td>");            //E
                sb.Append("    <td></td>");            //A
                sb.Append("    <td></td>");            //Importe
                sb.Append("    <td></td>");            //Kms.
                sb.Append("    <td></td>");            //Importe
                sb.Append("    <td></td>");            //ECO
                sb.Append("    <td></td>");            //Peajes
                sb.Append("    <td></td>");            //Comidas
                sb.Append("    <td></td>");            //Transp.
                sb.Append("    <td></td>");            //Hoteles
                sb.Append("    <td></td>");            //Total
                sb.Append("</tr>" + (char)13);

                iFila++;
            } while (iFila < 15);

            sb.Append("</table>");

            return(sb.ToString());
        }