Exemple #1
0
    private string obtener(string sEvolucionMensual, string sAgrupacion, string sVisualizacion, string sDato)
    {
        try
        {
            if (Session["DS_TABLADINAMICA"] == null)
            {
                Session["DS_TABLADINAMICA"] = PROYECTOSUBNODO.PruebaDatosTablaDinamicaServidor();
            }
            bool    bEvolucionMensual = (sEvolucionMensual == "1") ? true : false;
            DataSet ds = (DataSet)Session["DS_TABLADINAMICA"];

            #region Actualización de tablas auxiliares
            ds.Tables["Agrupaciones"].Rows.Clear();
            string[] aAgrupacion = Regex.Split(sAgrupacion, "{sep}");
            foreach (string oAg in aAgrupacion)
            {
                if (oAg == "")
                {
                    continue;
                }
                DataRow dr = ds.Tables["Agrupaciones"].NewRow();
                dr[0] = oAg;
                ds.Tables["Agrupaciones"].Rows.Add(dr);
            }

            /* Creo la tabla de Visualizaciones */
            ds.Tables["Visualizaciones"].Rows.Clear();
            string[] aVisualizacion = Regex.Split(sVisualizacion, "{sep}");
            foreach (string oVi in aVisualizacion)
            {
                if (oVi == "")
                {
                    continue;
                }
                DataRow dr = ds.Tables["Visualizaciones"].NewRow();
                dr[0] = oVi;
                ds.Tables["Visualizaciones"].Rows.Add(dr);
            }

            /* Creo la tabla de Datos */
            ds.Tables["Datos"].Rows.Clear();
            string[] aDato = Regex.Split(sDato, "{sep}");
            foreach (string oDa in aDato)
            {
                if (oDa == "")
                {
                    continue;
                }
                DataRow dr = ds.Tables["Datos"].NewRow();
                dr[0] = oDa;
                ds.Tables["Datos"].Rows.Add(dr);
            }

            #endregion

            #region Creación de tabla de resultado

            if (ds.Tables["Resultado"] != null)
            {
                ds.Tables.Remove("Resultado");
            }
            /* Creo la tabla de Resultado */
            DataTable dtResultado = ds.Tables.Add("Resultado");
            dtResultado.Columns.Add("t305_idproyectosubnodo", typeof(int));
            dtResultado.Columns.Add("t325_anomes", typeof(int));
            dtResultado.Columns.Add("t303_idnodo", typeof(int));
            dtResultado.Columns.Add("t303_denominacion", typeof(string));
            dtResultado.Columns.Add("t301_idproyecto", typeof(int));
            dtResultado.Columns.Add("t301_denominacion", typeof(string));
            dtResultado.Columns.Add("t302_idcliente", typeof(int));
            dtResultado.Columns.Add("t302_denominacion", typeof(string));
            dtResultado.Columns.Add("t314_idusuario_responsable", typeof(int));
            dtResultado.Columns.Add("ResponsableProyecto", typeof(string));
            dtResultado.Columns.Add("t305_cualidad", typeof(string));
            dtResultado.Columns.Add("t323_idnaturaleza", typeof(int));
            dtResultado.Columns.Add("t323_denominacion", typeof(string));

            if (!bEvolucionMensual)
            {
                dtResultado.Columns.Add("Ingresos_Netos", typeof(decimal));
                dtResultado.Columns.Add("Margen", typeof(decimal));
                dtResultado.Columns.Add("Obra_en_curso", typeof(decimal));
                dtResultado.Columns.Add("Saldo_de_Clientes", typeof(decimal));
                dtResultado.Columns.Add("Total_Cobros", typeof(decimal));
                dtResultado.Columns.Add("Total_Gastos", typeof(decimal));
                dtResultado.Columns.Add("Total_Ingresos", typeof(decimal));
                dtResultado.Columns.Add("Volumen_de_Negocio", typeof(decimal));
                dtResultado.Columns.Add("Otros_consumos", typeof(decimal));
                dtResultado.Columns.Add("Consumo_recursos", typeof(decimal));
            }
            else
            {
                foreach (DataRow oFilaTotal in ds.Tables["Datos"].Rows)
                {
                    foreach (DataRow oFilaMes in ds.Tables["Meses"].Rows)
                    {
                        dtResultado.Columns.Add(oFilaTotal["Dato"].ToString() + "_" + oFilaMes["Mes"].ToString(), typeof(decimal));
                    }
                }
            }

            ds.Tables["Resultado"].Rows.Clear();



            foreach (DataRow oFilaDato in ds.Tables["Consulta"].Rows)
            {
                int sw = 0;
                foreach (DataRow oFilaResultado in ds.Tables["Resultado"].Rows)
                {
                    int sw_agrupacion = 0;
                    foreach (DataRow oFilaAgrupacion in ds.Tables["Agrupaciones"].Rows)
                    {
                        if (oFilaDato[oFilaAgrupacion["Agrupacion"].ToString()].ToString() == oFilaResultado[oFilaAgrupacion["Agrupacion"].ToString()].ToString())
                        {
                            sw_agrupacion++;
                        }
                    }
                    if (sw_agrupacion == ds.Tables["Agrupaciones"].Rows.Count)
                    {
                        foreach (DataRow oFilaTotal in ds.Tables["Datos"].Rows)
                        {
                            if (!bEvolucionMensual)
                            {
                                oFilaResultado[oFilaTotal["Dato"].ToString()] = decimal.Parse(oFilaResultado[oFilaTotal["Dato"].ToString()].ToString()) + decimal.Parse(oFilaDato[oFilaTotal["Dato"].ToString()].ToString());
                            }
                            else
                            {
                                foreach (DataRow oFilaMes in ds.Tables["Meses"].Rows)
                                {
                                    oFilaResultado[oFilaTotal["Dato"].ToString() + "_" + oFilaMes["Mes"].ToString()] = decimal.Parse(oFilaResultado[oFilaTotal["Dato"].ToString() + "_" + oFilaMes["Mes"].ToString()].ToString()) + (((int)oFilaMes["Mes"] == (int)oFilaDato["t325_anomes"]) ? decimal.Parse(oFilaDato[oFilaTotal["Dato"].ToString()].ToString()) : 0);
                                }
                            }
                        }
                        sw = 1;
                        break;
                    }
                }
                if (sw == 1)
                {
                    continue;
                }

                DataRow dr = ds.Tables["Resultado"].NewRow();
                dr["t305_idproyectosubnodo"]     = (int)oFilaDato["t305_idproyectosubnodo"];
                dr["t325_anomes"]                = (int)oFilaDato["t325_anomes"];                //: oDato.anomes,
                dr["t303_idnodo"]                = (int)oFilaDato["t303_idnodo"];                //: oDato.idnodo,
                dr["t303_denominacion"]          = (string)oFilaDato["t303_denominacion"];       //: oDato.desnodo,
                dr["t301_idproyecto"]            = (int)oFilaDato["t301_idproyecto"];            //: oDato.idproyecto,
                dr["t301_denominacion"]          = (string)oFilaDato["t301_denominacion"];       //: oDato.desproyecto,
                dr["t302_idcliente"]             = (int)oFilaDato["t302_idcliente"];             //: oDato.idcliente,
                dr["t302_denominacion"]          = (string)oFilaDato["t302_denominacion"];       //: oDato.descliente,
                dr["t314_idusuario_responsable"] = (int)oFilaDato["t314_idusuario_responsable"]; //: oDato.idresponsableproyecto,
                dr["ResponsableProyecto"]        = (string)oFilaDato["ResponsableProyecto"];     //: oDato.desresponsableproyecto,
                dr["t305_cualidad"]              = (string)oFilaDato["t305_cualidad"];           //: oDato.cualidad,
                dr["t323_idnaturaleza"]          = (int)oFilaDato["t323_idnaturaleza"];          //: oDato.idnaturaleza,
                dr["t323_denominacion"]          = (string)oFilaDato["t323_denominacion"];       //: oDato.desnaturaleza,

                if (!bEvolucionMensual)
                {
                    dr["Ingresos_Netos"]     = (decimal)oFilaDato["Ingresos_Netos"];     //: oDato.Ingresos_Netos,
                    dr["Margen"]             = (decimal)oFilaDato["Margen"];             //: oDato.Margen,
                    dr["Obra_en_curso"]      = (decimal)oFilaDato["Obra_en_curso"];      //: oDato.Obra_en_curso,
                    dr["Saldo_de_Clientes"]  = (decimal)oFilaDato["Saldo_de_Clientes"];  //: oDato.Saldo_de_Clientes,
                    dr["Total_Cobros"]       = (decimal)oFilaDato["Total_Cobros"];       //: oDato.Total_Cobros,
                    dr["Total_Gastos"]       = (decimal)oFilaDato["Total_Gastos"];       //: oDato.Total_Gastos,
                    dr["Total_Ingresos"]     = (decimal)oFilaDato["Total_Ingresos"];     //: oDato.Total_Ingresos,
                    dr["Volumen_de_Negocio"] = (decimal)oFilaDato["Volumen_de_Negocio"]; //: oDato.Volumen_de_Negocio,
                    dr["Otros_consumos"]     = (decimal)oFilaDato["Otros_consumos"];     //: oDato.Otros_consumos,
                    dr["Consumo_recursos"]   = (decimal)oFilaDato["Consumo_recursos"];   //: oDato.Consumo_recursos
                }
                else
                {
                    foreach (DataRow oFilaTotal in ds.Tables["Datos"].Rows)
                    {
                        foreach (DataRow oFilaMes in ds.Tables["Meses"].Rows)
                        {
                            dr[oFilaTotal["Dato"].ToString() + "_" + oFilaMes["Mes"].ToString()] = (decimal)oFilaDato[oFilaTotal["Dato"].ToString()];
                        }
                    }
                }
                ds.Tables["Resultado"].Rows.Add(dr);
            }

            #endregion

            #region Creación de tabla HTML con el resultado

            StringBuilder sb = new StringBuilder();

            sb.Append("<table id='tblDatos' style='width:auto' cellpadding='0' cellspacing='0' border='0'>");
//            var tblDatos = $I("tblDatos");
//            if (tblDatos != null) {
//                var oNF = null;
//                var oNC = null;
            sb.Append("<tr class='TBLINI' style='text-align:center; height:20px; border:solid 1px #FFFFF; border-collapse:collapse; border-spacing:0px;background-repeat: repeat-x;'>");
            foreach (DataRow oFilaVis in ds.Tables["Visualizaciones"].Rows)
            {
                sb.Append("<td>" + oFilaVis["Visualizacion"].ToString() + "</td>");
            }
            foreach (DataRow oFilaTotal in ds.Tables["Datos"].Rows)
            {
                if (!bEvolucionMensual)
                {
                    sb.Append("<td>" + oFilaTotal["Dato"].ToString() + "</td>");
                }
                else
                {
                    foreach (DataRow oMes in ds.Tables["Meses"].Rows)
                    {
                        sb.Append("<td>" + oFilaTotal["Dato"].ToString() + "_" + oMes["Mes"].ToString() + "</td>");
                    }
                }
            }
            sb.Append("</tr>");
            foreach (DataRow oFilaResultado in ds.Tables["Resultado"].Rows)
            {
                //for (var i = 0; i < this.tabla_resultado.length; i++) {
                //oNF = tblDatos.insertRow(-1);
                sb.Append("<tr>");

                foreach (DataRow oFilaVis in ds.Tables["Visualizaciones"].Rows)
                {
                    sb.Append("<td>" + oFilaResultado[oFilaVis["Visualizacion"].ToString()].ToString() + "</td>");
                }

                foreach (DataRow oFilaTotal in ds.Tables["Datos"].Rows)
                {
                    if (!bEvolucionMensual)
                    {
                        sb.Append("<td style='text-align:right;'>" + decimal.Parse(oFilaResultado[oFilaTotal["Dato"].ToString()].ToString()).ToString("N") + "</td>");
                    }
                    else
                    {
                        foreach (DataRow oMes in ds.Tables["Meses"].Rows)
                        {
                            sb.Append("<td>" + decimal.Parse(oFilaResultado[oFilaTotal["Dato"].ToString() + "_" + oMes["Mes"].ToString()].ToString()).ToString("N") + "</td>");
                        }
                    }
                }
            }
            // $I("divCatalogo").children[0].style.width = tblDatos.scrollWidth + "px";
//            }
            //$I("divCatalogo").scrollTop = 0;
            //$I("divCatalogo").scrollLeft = 0;

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

            #endregion

            ds.Dispose();
            return("OK@#@" + sb.ToString());// + PROYECTOSUBNODO.PruebaDatosTablaDinamica2();
        }
        catch (Exception ex)
        {
            return("Error@#@" + Errores.mostrarError("Error al obtener los datos.", ex));
        }
    }
    private string getDocumentos(string t696_id, string sModoAcceso, string sEstProy)
    {
        StringBuilder sb = new StringBuilder();
        bool          bModificable;
        bool          bAdmin = false;

        try
        {
            SqlDataReader dr;
            if (Utilidades.isNumeric(t696_id))
            {
                dr = SUPER.BLL.DOCSOLICITUD.Catalogo(int.Parse(t696_id));
            }
            else
            {
                dr = SUPER.BLL.DOCSOLICITUD.CatalogoByUsuTicks(t696_id);
            }

            if (sModoAcceso == "R")
            {
                sb.Append("<table id='tblDocumentos' class='texto' style='width: 620px;'>");
            }
            else
            {
                sb.Append("<table id='tblDocumentos' class='texto MANO' style='width: 620px;'>");
            }

            sb.Append("<colgroup>");
            sb.Append("    <col style='width:310px;' />");
            sb.Append("    <col style='width:310px;' />");
            sb.Append("</colgroup>");
            sb.Append("<tbody>");
            while (dr.Read())
            {
                //Si el usuario es el autor del archivo, o es administrador, se permite modificar.
                bAdmin = SUPER.Capa_Negocio.Utilidades.EsAdminProduccion();
                if (dr["t001_idficepi_autor"].ToString() == Session["IDFICEPI_CVT_ACTUAL"].ToString() || bAdmin)
                {
                    if (sModoAcceso == "R")
                    {
                        bModificable = false;
                    }
                    else
                    {
                        bModificable = true;
                    }
                }
                else
                {
                    bModificable = false;
                }

                sb.Append("<tr style='height:20px;' id='" + dr["t697_iddoc"].ToString() + "' onclick='mm(event);' sTipo='SC' sAutor='" + dr["t001_idficepi_autor"].ToString() + "' onmouseover='TTip(event)'>");

                if (bModificable)
                {
                    sb.Append("<td style='padding-left:3px;' class='MA' ondblclick=\"modificarDoc(this.parentNode.getAttribute('sTipo'), this.parentNode.id)\"><nobr class='NBR W290'>" + dr["t697_descripcion"].ToString() + "</nobr></td>");
                }
                else
                {
                    sb.Append("<td style='padding-left:3px;'><nobr class='NBR W300'>" + dr["t697_descripcion"].ToString() + "</nobr></td>");
                }

                if (dr["t697_nombrearchivo"].ToString() == "")
                {
                    if (bModificable)
                    {
                        sb.Append("<td class='MA' ondblclick=\"modificarDoc(this.parentNode.getAttribute('sTipo'), this.parentNode.id)\"></td>");
                    }
                    else
                    {
                        sb.Append("<td></td>");
                    }
                }
                else
                {
                    string sNomArchivo = dr["t697_nombrearchivo"].ToString();
                    sb.Append("<td><img src=\"../../../../../images/imgDescarga.gif\" width='16px' height='16px' class='MANO' onclick=\"descargar(this.parentNode.parentNode.getAttribute('sTipo'), this.parentNode.parentNode.id);\" style='vertical-align:bottom;' title=\"Descargar " + sNomArchivo + "\">");
                    if (bModificable)
                    {
                        sb.Append("&nbsp;<nobr class='NBR MA' style='width:280px;' ondblclick=\"modificarDoc(this.parentNode.parentNode.getAttribute('sTipo'), this.parentNode.parentNode.id)\">" + sNomArchivo + "</nobr></td>");
                    }
                    else
                    {
                        sb.Append("&nbsp;<nobr class='NBR' style='width:280px;'>" + sNomArchivo + "</nobr></td>");
                    }
                }
                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");

            return(sb.ToString());
        }
        catch (Exception ex)
        {
            return("Error@#@" + Errores.mostrarError("Error al obtener documentos de la solicitud de certificado", ex));
        }
    }
Exemple #3
0
    private string setAgrupacion(string sIdAgrupacion, string sDenominacion, string sProyectos)
    {
        string sResul           = "";
        bool   bErrorControlado = false;

        #region abrir 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
        {
            string sAgrupacion = AGRUPACIONPROYECTO.ExisteMismosProyectos(tr, sProyectos.Replace(";", ","));
            if (sAgrupacion != "")
            {
                bErrorControlado = true;
                throw (new Exception("Ya existe una agrupación para los proyectos indicados (" + sAgrupacion + ")."));
            }

            int nIDAgrupacion = int.Parse(sIdAgrupacion);

            if (nIDAgrupacion == 0)
            {
                nIDAgrupacion = AGRUPACIONORDEN.Insert(tr, Utilidades.unescape(sDenominacion), (int)Session["UsuarioActual"]);
            }
            else
            {
                AGRUPACIONORDEN.Update(tr, nIDAgrupacion, Utilidades.unescape(sDenominacion));
                AGRUPACIONPROYECTO.DeleteByAgrupacion(tr, nIDAgrupacion);
            }

            AGRUPACIONPROYECTO.Insert(tr, nIDAgrupacion, sProyectos.Replace(";", ","));

            Conexion.CommitTransaccion(tr);
            sResul = "OK@#@";
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);

            if (!bErrorControlado)
            {
                sResul = sResul = "Error@#@" + Errores.mostrarError("Error al grabar los datos de la agrupación", ex);
            }
            else
            {
                sResul = "Error@#@Operación rechazada.\n\n" + ex.Message;
            }
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
    private string ObtenerDatosConsumos(string sDesde, string sHasta, string sProfesionales)
    {
        string        sResul = "";
        StringBuilder sb     = new StringBuilder();

        sb.Length = 0;
        DateTime dtDesde, dtHasta;
        bool     bError = false;

        try
        {
            if (!Utilidades.isDate(sDesde))
            {
                sResul = "Error@#@La fecha desde no es correcta";
                bError = true;
            }
            if (!bError && !Utilidades.isDate(sHasta))
            {
                sResul = "Error@#@La fecha hasta no es correcta";
                bError = true;
            }
            if (!bError)
            {
                dtDesde = System.Convert.ToDateTime(sDesde);
                dtHasta = System.Convert.ToDateTime(sHasta);
                SqlDataReader dr = USUARIO.GetConsumosProf(int.Parse(Session["UsuarioActual"].ToString()), dtDesde, dtHasta, sProfesionales);

                sb.Append("<TABLE style='font-family:Arial;font-size:8pt;' cellSpacing='2' border=1>");
                sb.Append("<tr align=center style='background-color: #BCD4DF;'>");
                sb.Append("<td>F. consumo</td>");
                sb.Append("<td>Nº profesional</td>");
                sb.Append("<td>Profesional</td>");
                sb.Append("<td>" + Estructura.getDefLarga(Estructura.sTipoElem.NODO) + " del Profesional</td>");
                sb.Append("<td>Proveedor</td>");
                sb.Append("<td>" + Estructura.getDefLarga(Estructura.sTipoElem.NODO) + " del Proyecto</td>");
                sb.Append("<td>Nº proyecto</td>");
                sb.Append("<td>Denominación proyecto</td>");
                sb.Append("<td>Denominación proyecto técnico</td>");
                sb.Append("<td>Nº tarea</td>");
                sb.Append("<td>Denominación tarea</td>");
                sb.Append("<td>Facturable</td>");
                sb.Append("<td>Horas</td>");
                sb.Append("<td>Jornadas</td>");
                sb.Append("<td>Comentario</td>");
                sb.Append("<td>Cliente</td>");
                sb.Append("<td>Naturaleza</td>");
                sb.Append("<td>Modelo de contratación</td>");
                sb.Append("</tr>");
                sb.Append("</table>");

                sb.Append("<TABLE style='font-family:Arial;font-size:8pt;' border=1>");
                sb.Append("<COLGROUP>");
                sb.Append("<col />"); //Fecha consumo
                sb.Append("<col />");
                sb.Append("<col />"); //Profesional
                sb.Append("<col />"); //Nodo del profesional
                sb.Append("<col />"); //Proveedor del profesional
                sb.Append("<col />"); //Nodo del proyecto
                sb.Append("<col />"); //Nº proyecto
                sb.Append("<col />"); //proyecto
                sb.Append("<col />"); //PT
                sb.Append("<col />"); //Nº tarea
                sb.Append("<col />");
                sb.Append("<col />"); //facturable
                sb.Append("<col />");
                sb.Append("<col />");
                sb.Append("<col />");
                sb.Append("<col />");
                sb.Append("<col />");
                sb.Append("<col />");
                sb.Append("</COLGROUP>");
                while (dr.Read())
                {
                    sb.Append("<tr style='vertical-align:top;'>");
                    sb.Append("<td>" + ((DateTime)dr["t337_fecha"]).ToShortDateString() + "</td>");
                    sb.Append("<td style='text-align:rigth;'>" + ((int)dr["t314_idusuario"]).ToString("#,###") + "</td>");
                    sb.Append("<td>" + dr["profesional"].ToString() + "</td>");
                    //CR del profesional
                    sb.Append("<td>" + dr["Nodo_Profesional"].ToString() + "</td>");
                    //Proveedor del profesional
                    sb.Append("<td>" + dr["Proveedor_Profesional"].ToString() + "</td>");
                    //CR del proyecto
                    sb.Append("<td>" + dr["t303_denominacion"].ToString() + "</td>");
                    sb.Append("<td style='text-align:rigth;'>" + ((int)dr["t301_idproyecto"]).ToString("#,###") + "</td>");
                    sb.Append("<td>" + dr["t301_denominacion"].ToString() + "</td>");
                    sb.Append("<td>" + dr["T331_despt"].ToString() + "</td>");
                    sb.Append("<td style='text-align:rigth;'>" + ((int)dr["t332_idtarea"]).ToString("#,###") + "</td>");
                    sb.Append("<td>" + dr["t332_destarea"].ToString() + "</td>");
                    if ((bool)dr["t332_facturable"])
                    {
                        sb.Append("<td style='text-align:center;'>X</td>");
                    }
                    else
                    {
                        sb.Append("<td>&nbsp;</td>");
                    }
                    //sb.Append("<td style='text-align:rigth;'>" + decimal.Parse(dr["TotalHorasReportadas"].ToString()).ToString("N") + "</td>");
                    //sb.Append("<td style='text-align:rigth;'>" + decimal.Parse(dr["TotalJornadasReportadas"].ToString()).ToString("N") + "</td>");
                    sb.Append("<td style='text-align:rigth;'>" + dr["TotalHorasReportadas"].ToString() + "</td>");
                    sb.Append("<td style='text-align:rigth;'>" + double.Parse(dr["TotalJornadasReportadas"].ToString()).ToString("#,###.##") + "</td>");
                    sb.Append("<td>&nbsp;" + dr["Comentarios"].ToString().Replace("'", "&#39;").Replace("\"", "&#39;") + "</td>");
                    sb.Append("<td>" + dr["t302_denominacion"].ToString() + "</td>");
                    sb.Append("<td>" + dr["t323_denominacion"].ToString() + "</td>");
                    sb.Append("<td>" + dr["t316_denominacion"].ToString() + "</td>");

                    sb.Append("</tr>");
                }
                dr.Close();
                dr.Dispose();

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

                //sResul = "OK@#@" + sb.ToString();
                string sIdCache = "EXCEL_CACHE_" + Session["IDFICEPI_ENTRADA"].ToString() + "_" + DateTime.Now.ToString();
                Session[sIdCache] = sb.ToString();;

                sResul    = "OK@#@cacheado@#@" + sIdCache + "@#@" + sb.ToString();
                sb.Length = 0; //Para liberar memoria
            }
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al obtener los datos de consulta masiva de profesionales", ex);
        }

        return(sResul);
    }
    private string getResponsables(string sAp1, string sAp2, string sNombre, string sMostrarBajas, string sTipoResp, string idNodo)
    {
        string        sResul = "";
        StringBuilder sb     = new StringBuilder();
        SqlDataReader dr     = null;

        sb.Append("<table id='tblDatos' class='texto' style='WIDTH: 500px;'>");
        sb.Append("<colgroup><col style='width:20px;' /><col style='width:480px;' /></colgroup>");
        sb.Append("<tbody>");
        try
        {
            switch (sTipoResp)
            {
            case "proyecto": dr = USUARIO.ObtenerProfesionalesResponsablesProyecto(Utilidades.unescape(sAp1), Utilidades.unescape(sAp2), Utilidades.unescape(sNombre), (sMostrarBajas == "1")? true:false); break;

            case "contrato": dr = USUARIO.ObtenerProfesionalesResponsablesContrato(Utilidades.unescape(sAp1), Utilidades.unescape(sAp2), Utilidades.unescape(sNombre), (sMostrarBajas == "1") ? true : false); break;

            case "crp": dr = USUARIO.ObtenerProfesionalesCRP(Utilidades.unescape(sAp1), Utilidades.unescape(sAp2), Utilidades.unescape(sNombre), (sMostrarBajas == "1") ? true : false, (idNodo == "") ? null : ((int?)int.Parse(idNodo))); break;
            }

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

                if ((int)dr["es_responsable"] == 0)
                {
                    if (sTipoResp == "crp")
                    {
                        //sb.Append(" class='MA' ondblclick=\"aceptarClick(this.rowIndex)\"><td><img src='../../images/imgResponsable" + sPrefijoCRP + ".gif' style='filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30)' width='16px' height='16px' /></td>");
                        sb.Append(" respon='0' class='MA' style='height:20px;cursor:url(../../images/imgManoAzul2.cur),pointer;' ondblclick=\"aceptarClick(this.rowIndex)\">");
                        sb.Append("<td><img src='../../images/imgResponsable" + sPrefijoCRP + ".gif' width='16px' height='16px' /></td>");
                        //sb.Append("<td style='noWrap:true;' ondblclick=\"aceptarClick(this.parentNode.rowIndex)\" title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["Profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["idusuario"].ToString()).ToString("#,###") + "<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;'>Empresa:</label>" + dr["EMPRESA"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\">" + dr["profesional"].ToString() + "</td>");
                        sb.Append("<td style='noWrap:true; padding-left:3px;' ondblclick=\"aceptarClick(this.parentNode.rowIndex)\" title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["Profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["idusuario"].ToString()).ToString("#,###") + "<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\">" + dr["profesional"].ToString() + "</td>");
                    }
                    else
                    {
                        //sb.Append("><td><img src='../../images/imgResponsable" + sPrefijoCRP + ".gif' style='filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30)' width='16px' height='16px' /></td>");
                        sb.Append(" respon='0'  style='height:20px;'>");
                        sb.Append("<td><img src='../../images/imgResponsable" + sPrefijoCRP + ".gif' 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' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["Profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["idusuario"].ToString()).ToString("#,###") + "<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;'>Empresa:</label>" + dr["EMPRESA"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\">" + dr["profesional"].ToString() + "</td>");
                        sb.Append("<td style='noWrap:true; padding-left:3px;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["Profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["idusuario"].ToString()).ToString("#,###") + "<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\">" + dr["profesional"].ToString() + "</td>");
                    }
                }
                else
                {
                    sb.Append(" respon='1' class='MA'  style='height:20px;cursor:url(../../images/imgManoAzul2.cur),pointer;' ondblclick=\"aceptarClick(this.rowIndex)\">");
                    sb.Append("<td><img src='../../images/imgResponsable" + sPrefijoCRP + ".gif' width='16px' height='16px' /></td>");
                    //sb.Append("<td style='noWrap:true;' ondblclick=\"aceptarClick(this.parentNode.rowIndex)\" title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["Profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["idusuario"].ToString()).ToString("#,###") + "<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;'>Empresa:</label>" + dr["EMPRESA"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\">" + dr["profesional"].ToString() + "</td>");
                    sb.Append("<td style='noWrap:true; padding-left:3px;' ondblclick=\"aceptarClick(this.parentNode.rowIndex)\" title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["Profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["idusuario"].ToString()).ToString("#,###") + "<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\">" + dr["profesional"].ToString() + "</td>");
                }

                sb.Append("</tr>");
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");
            sResul = "OK@#@" + sb.ToString();
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al obtener los responsables.", ex);
        }
        return(sResul);
    }
Exemple #6
0
    private string Procesar(string sTipo, int idOrigen, string sDatosDestino)
    {
        string sResul           = "";
        bool   bErrorControlado = false;

        #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);
            }
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        #endregion

        try
        {
            switch (sTipo)
            {
            case "E":
                SUPER.BLL.EXPFICEPIENTORNO.Reasignar(tr, idOrigen, sDatosDestino);    //idDestino
                break;

            case "T":
                if (idOrigen != int.Parse(sDatosDestino))
                {
                    SUPER.BLL.TituloFicepi.Reasignar(tr, idOrigen, int.Parse(sDatosDestino));
                }
                break;

            case "C":
                string[] aDatos = Regex.Split(sDatosDestino, "{sep}");
                if (int.Parse(aDatos[0]) != int.Parse(aDatos[1]))
                {
                    SUPER.BLL.EXPPROF.Reasignar(tr, idOrigen, int.Parse(aDatos[0]), int.Parse(aDatos[1]), Utilidades.unescape(aDatos[2]));
                }
                break;
            }

            //string[] aDatos = Regex.Split(sDatosDestino, "{sepreg}");
            ////E:entornos tecnologicos, T:titulaciones, C:clientes no Ibermatica
            //foreach (string sDato in aDatos)
            //{
            //    if (sDato == "") continue;
            //    string[] aValores = Regex.Split(sDato, "{sep}");
            //}

            Conexion.CommitTransaccion(tr);
            sResul = "OK@#@";
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);

            if (!bErrorControlado)
            {
                sResul = "Error@#@" + Errores.mostrarError("Error al grabar la reasignación", ex);
            }
            else
            {
                sResul = "Error@#@Operación rechazada.\n\n" + ex.Message;
            }
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }

        return(sResul);
    }
Exemple #7
0
 /// <summary>
 /// Compone un empaquetable a partir de su forma
 /// en texto de fichero.
 /// </summary>
 /// <param name="texto">Segmento de texto.</param>
 /// <returns>Objeto IEmpaquetable representado
 /// por el segmento de texto</returns>
 public object DeFichero(string texto)
 {
     throw new NotImplementedException(Errores.MostrarMensaje("Conversor.000",
                                                              "método DeFichero(string texto) de la clase Conversor"));
 }
    protected void obtenerEstructura(int nNivel, int nID)
    {
        StringBuilder sb = new StringBuilder();
        SqlDataReader dr = null;

        try
        {
            switch (nNivel)
            {
            case 1:     //SUPERNODO4
                this.Title = Estructura.getDefLarga(Estructura.sTipoElem.SUPERNODO4);
                dr         = SUPERNODO4.Catalogo(null, "", true, null, null, null, null, 5, 0);
                break;

            case 2:     //SUPERNODO3
                this.Title = Estructura.getDefLarga(Estructura.sTipoElem.SUPERNODO3);
                dr         = SUPERNODO3.Catalogo(null, "", nID, true, null, null, null, null, 6, 0);
                break;

            case 3:     //SUPERNODO2
                this.Title = Estructura.getDefLarga(Estructura.sTipoElem.SUPERNODO2);
                dr         = SUPERNODO2.Catalogo(null, "", true, nID, null, null, null, null, 6, 0);
                break;

            case 4:     //SUPERNODO1
                this.Title = Estructura.getDefLarga(Estructura.sTipoElem.SUPERNODO1);
                dr         = SUPERNODO1.Catalogo(null, "", nID, true, null, null, null, null, 6, 0);
                break;

            case 5:     //NODO
                this.Title = Estructura.getDefLarga(Estructura.sTipoElem.NODO);
                dr         = NODO.CatalogoBySuperNodo1(nID);
                break;

            case 11:     //TIPOLOGIA DE PROYECTO
                this.Title = "Tipologías de proyecto";
                dr         = TIPOLOGIAPROY.Catalogo(null, "", null, null, null, null, null, 7, 0);
                break;

            case 12:     //GRUPO DE NATURALEZA
                this.Title = "Grupos de naturaleza";
                dr         = GRUPONAT.Catalogo(null, "", (byte)nID, null, true, 4, 0);
                break;

            case 13:     //SUBGRUPO DE NATURALEZA
                this.Title = "Subgrupos de naturaleza";
                dr         = SUBGRUPONAT.Catalogo(null, "", nID, null, true, 4, 0);
                break;

            case 21:     //UNIDADES DE PREVENTA
                this.Title = "Unidades de preventa";
                dr         = SUPER.DAL.PreventaUnidad.Catalogo(null, "", true);
                break;

            case 22:     //AREAS DE PREVENTA
                this.Title = "Áreas de preventa";
                dr         = SUPER.DAL.PreventaArea.Catalogo((short)nID, null, "", true, null);
                break;
            }

            sb.Append("<div style='background-image:url(../../Images/imgFT18.gif);width:396px'>");
            sb.Append("<table id='tblDatos' class='texto MA' style='width: 396px;'>");
            sb.Append("<colgroup><col style='width:396px;' /></colgroup>");
            sb.Append("<tbody>");
            while (dr.Read())
            {
                switch (nNivel)
                {
                case 1:     //SUPERNODO4
                    sb.Append("<tr id='" + dr["t394_idsupernodo4"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["t394_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 2:     //SUPERNODO3
                    sb.Append("<tr id='" + dr["t393_idsupernodo3"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["t393_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 3:     //SUPERNODO2
                    sb.Append("<tr id='" + dr["t392_idsupernodo2"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["t392_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 4:     //SUPERNODO1
                    sb.Append("<tr id='" + dr["t391_idsupernodo1"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["t391_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 5:     //NODO
                    sb.Append("<tr id='" + dr["t303_idnodo"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["t303_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 11:     //TIPOLOGIA DE PROYECTO
                    sb.Append("<tr id='" + dr["t320_idtipologiaproy"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["t320_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 12:     //GRUPO DE NATURALEZA
                    sb.Append("<tr id='" + dr["t321_idgruponat"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["t321_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 13:     //SUBGRUPO DE NATURALEZA
                    sb.Append("<tr id='" + dr["t322_idsubgruponat"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["t322_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 21:     //UNIDAD DE PREVENTA
                    sb.Append("<tr id='" + dr["ta199_idunidadpreventa"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["ta199_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;

                case 22:     //AREA DE PREVENTA
                    sb.Append("<tr id='" + dr["ta200_idareapreventa"].ToString() + "' onclick='ms(this)' ondblclick='aceptarClick(this.rowIndex)'>");
                    sb.Append("<td>" + dr["ta200_denominacion"].ToString() + "</td>");
                    sb.Append("</tr>");
                    break;
                }
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");
            sb.Append("</div>");
            divCatalogo.InnerHtml = sb.ToString();
        }
        catch (Exception ex)
        {
            sErrores = Errores.mostrarError("Error al obtener los elementos de la estructura.", ex);
        }
    }
Exemple #9
0
    private string generarExcel(string sConceptoEje,
                                string sDesde, string sHasta, string sNivelEstructura,
                                string sCategoria, string sCualidad, string sPSN, string sClientes,
                                string sResponsables, string sNaturalezas, string sHorizontal, string sModeloContrato,
                                string sContrato, string sIDEstructura, string sSectores, string sSegmentos,
                                string sComparacionLogica,
                                string sCNP, string sCSN1P, string sCSN2P, string sCSN3P, string sCSN4P,
                                string sProveedores, string sClaseEco, string sCabecera, string sURL)
    {
        StringBuilder sb = new StringBuilder();

        try
        {
            SqlDataReader dr = ConsultasPGE.ObtenerConsuConta
                               (
                int.Parse(sConceptoEje),
                (SUPER.Capa_Negocio.Utilidades.EsAdminProduccion()) ? 0 : (int)Session["UsuarioActual"],
                int.Parse(sDesde),
                int.Parse(sHasta),
                (sNivelEstructura == "0")? null:(int?)int.Parse(sNivelEstructura),
                sCategoria,
                sCualidad,
                sClientes,
                sResponsables,
                sNaturalezas,
                sHorizontal,
                sModeloContrato,
                sContrato,
                sIDEstructura,
                sSectores,
                sSegmentos,
                (sComparacionLogica == "1")? true:false,
                sCNP,
                sCSN1P,
                sCSN2P,
                sCSN3P,
                sCSN4P,
                sPSN,
                (sClaseEco == "")? null:(int?)int.Parse(sClaseEco),
                sProveedores,
                Session["MONEDA_VDC"].ToString()
                               );

            sb.Append("<table id='tblDatos' style='font-family:Arial;font-size:8pt;' cellspacing='0' cellpadding='0' border='1'>");
            sb.Append("<tr style='height:18px;'>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Proveedor</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>" + sCabecera + "</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Nº Proy</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Proyecto</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Cualidad</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>" + Estructura.getDefLarga(Estructura.sTipoElem.NODO) + "</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Concepto contable</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Nº documento</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Fecha contable</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Descripción</td>");
            sb.Append("<td style='background-color: #BCD4DF;font-weight:bold;'>Importe</td>");
            sb.Append("</tr>" + (char)10);

            while (dr.Read())
            {
                sb.Append("<tr style='height:18px;'>");
                sb.Append("<td>" + dr["t315_denominacion"].ToString() + "</td>");
                sb.Append("<td>" + dr["denominacion"].ToString() + "</td>");
                sb.Append("<td>" + int.Parse(dr["t301_idproyecto"].ToString()).ToString("#,###") + "</td>");
                sb.Append("<td>" + dr["t301_denominacion"].ToString() + "</td>");
                sb.Append("<td>");
                switch (dr["t305_cualidad"].ToString())
                {
                case "C":
                    sb.Append("Contratante");
                    break;

                case "J":
                    sb.Append("Replicado sin gestión");
                    break;

                case "P":
                    sb.Append("Replicado con gestión");
                    break;
                }
                sb.Append("</td><td>" + dr["t303_denominacion"].ToString() + "</td>");
                sb.Append("<td>" + dr["t328_denominacion"].ToString() + "</td>");
                sb.Append("<td>" + dr["t478_ndocumento"].ToString() + "</td>");
                sb.Append("<td>&nbsp;" + dr["fecha_contable"].ToString() + "</td>");
                sb.Append("<td>" + dr["t478_descripcion"].ToString() + "</td>");
                sb.Append("<td>" + decimal.Parse(dr["t478_importe"].ToString()).ToString("N") + "</td>");
                sb.Append("</tr>" + (char)10);
            }
            dr.Close();
            dr.Dispose();

            //sb.Append("<tr><td colspan='11' rowspan='3' style='font-weight:bold;'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;* Importes en " + Session["DENOMINACION_VDC"].ToString() + "</td></tr>");

            sb.Append("<tr style='vertical-align:top;'>");
            sb.Append("<td style='font-weight:bold;width:auto;'>* Importes en " + Session["DENOMINACION_VDC"].ToString() + "</td>");

            for (var j = 2; j <= 11; j++)
            {
                sb.Append("<td></td>");
            }
            sb.Append("</tr>" + (char)13);

            sb.Append("</table>");
            //return "OK@#@" + sb.ToString();
            string sIdCache = "EXCEL_CACHE_" + Session["IDFICEPI_ENTRADA"].ToString() + "_" + DateTime.Now.ToString();
            Session[sIdCache] = sb.ToString();;

            return("OK@#@cacheado@#@" + sIdCache + "@#@" + sb.ToString());
        }
        catch (Exception ex)
        {
            return("Error@#@" + Errores.mostrarError("Error al generar el Excel.", ex));
        }
    }
Exemple #10
0
    private string Grabar(string sPSN, string sAnnomes, string strProfesionales, string sHayDatosProf)
    {
        string sResul = "";
        string sEstadoMes = "";
        int    nPSN = int.Parse(sPSN), nAnnomes = int.Parse(sAnnomes), nSMPSN = 0;
        bool   bErrorControlado = false;

        #region abrir 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
        {
            if (PROYECTOSUBNODO.ObtenerUltCierreEcoNodoPSN(tr, nPSN) >= nAnnomes)
            {
                Conexion.CerrarTransaccion(tr);
                sResul = "Error@#@" + Errores.mostrarError("No se ha realizado el traspaso, debido a que el " + Estructura.getDefLarga(Estructura.sTipoElem.NODO) + " se encuentra cerrado en el mes a traspasar.");
            }
            else
            {
                nSMPSN = SEGMESPROYECTOSUBNODO.ExisteSegMesProy(tr, nPSN, nAnnomes);
                if (nSMPSN == 0)
                {
                    if (sHayDatosProf == "1")
                    {
                        sEstadoMes = SEGMESPROYECTOSUBNODO.EstadoMesACrear(tr, nPSN, nAnnomes);
                        if (sEstadoMes != "C")
                        {
                            nSMPSN = SEGMESPROYECTOSUBNODO.Insert(tr, nPSN, nAnnomes, sEstadoMes, 0, 0, false, 0, 0);
                        }
                    }
                }
                else
                {
                    if (Session["ADMINISTRADOR_PC_ACTUAL"].ToString() != "SA")
                    {
                        SEGMESPROYECTOSUBNODO oSMPSN = SEGMESPROYECTOSUBNODO.Obtener(tr, nSMPSN, null);
                        if (oSMPSN.t325_estado == "C")
                        {
                            bErrorControlado = true;
                            throw (new Exception("No se permite grabar, debido a que el mes en curso está cerrado para el proyecto."));
                        }
                    }

                    CONSPERMES.DeleteByT325_idsegmesproy(tr, nSMPSN);
                }

                #region Datos Profesionales
                if (strProfesionales != "" && sEstadoMes != "C")
                {
                    string[] aProfesionales = Regex.Split(strProfesionales, "##");
                    foreach (string oProf in aProfesionales)
                    {
                        if (oProf == "")
                        {
                            continue;
                        }
                        string[] aProf = Regex.Split(oProf, "//");
                        ///aProf[0] = idUsuario
                        ///aProf[1] = costecon
                        ///aProf[2] = costerep
                        ///aProf[3] = nodo_usuario
                        ///aProf[4] = empresa_nodo
                        ///aProf[5] = unidades económicas

                        CONSPERMES.Insert(tr, nSMPSN, int.Parse(aProf[0]), double.Parse(aProf[5]), decimal.Parse(aProf[1]), decimal.Parse(aProf[2]), (aProf[3] != "") ? (int?)int.Parse(aProf[3]) : null, (aProf[4] != "") ? (int?)int.Parse(aProf[4]) : null);
                    }
                }
                #endregion

                SEGMESPROYECTOSUBNODO.UpdateTraspasoIAP(tr, nSMPSN, true);

                Conexion.CommitTransaccion(tr);
                sResul = "OK@#@";
            }
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            if (!bErrorControlado)
            {
                sResul = "Error@#@" + Errores.mostrarError("Error al grabar los consumos del proyecto.", ex);
            }
            else
            {
                sResul = "Error@#@Operación rechazada.\n\n" + ex.Message;
            }
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
Exemple #11
0
    private string Traspglobal(string sSobreescribir)
    {
        string  sResul     = "";
        string  sEstadoMes = "";
        int     nSMPSN     = 0;
        DataSet dsProf     = null;

        #region abrir 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
        {
            DataSet ds = CONSPERMES.ObtenerPSNaTraspasarDS((int)Session["UsuarioActual"]);
            foreach (DataRow oPSN in ds.Tables[0].Rows)
            {
                if (PROYECTOSUBNODO.ObtenerUltCierreEcoNodoPSN(tr, (int)oPSN["t305_idproyectosubnodo"]) >= (int)oPSN["annomes_traspaso"])
                {
                    Conexion.CerrarTransaccion(tr);
                    sResul = "Error@#@" + Errores.mostrarError("No se ha realizado el traspaso, debido a que el " + Estructura.getDefLarga(Estructura.sTipoElem.NODO) + " '" + oPSN["t303_denominacion"].ToString() + "' se encuentra cerrado en el mes a traspasar.");
                    break;
                }
                else
                {
                    nSMPSN = SEGMESPROYECTOSUBNODO.ExisteSegMesProy(tr, (int)oPSN["t305_idproyectosubnodo"], (int)oPSN["annomes_traspaso"]);
                    if (nSMPSN == 0)
                    {
                        if (oPSN["tiene_consumos"].ToString() == "1")
                        {
                            sEstadoMes = SEGMESPROYECTOSUBNODO.EstadoMesACrear(tr, (int)oPSN["t305_idproyectosubnodo"], (int)oPSN["annomes_traspaso"]);
                            if (sEstadoMes == "C")
                            {
                                continue;
                            }

                            nSMPSN = SEGMESPROYECTOSUBNODO.Insert(tr, (int)oPSN["t305_idproyectosubnodo"], (int)oPSN["annomes_traspaso"], sEstadoMes, 0, 0, false, 0, 0);
                        }
                    }
                    else
                    {
                        SEGMESPROYECTOSUBNODO oSegMes = SEGMESPROYECTOSUBNODO.Obtener(tr, nSMPSN, null);
                        if (oSegMes.t325_estado == "C")
                        {
                            continue;
                        }

                        if (sSobreescribir == "1")
                        {
                            CONSPERMES.DeleteByT325_idsegmesproy(tr, nSMPSN);
                        }
                    }

                    #region Datos Profesionales
                    if (oPSN["tiene_consumos"].ToString() == "1") //si tiene consumos técnicos (IAP)
                    {
                        dsProf = CONSPERMES.ObtenerDatosPSNaTraspasarDS(tr, (int)oPSN["t305_idproyectosubnodo"], (int)oPSN["annomes_traspaso"], oPSN["t301_modelocoste"].ToString(), true, (sSobreescribir == "1")? false:true);
                        foreach (DataRow oProf in dsProf.Tables[0].Rows)
                        {
                            double nUnidades = (oPSN["t301_modelocoste"].ToString() == "J") ? double.Parse(oProf["jornadas_adaptadas"].ToString()) : double.Parse(oProf["horas_reportadas_proy"].ToString());
                            if (nUnidades != 0)
                            {
                                CONSPERMES.Insert(tr, nSMPSN,
                                                  (int)oProf["t314_idusuario"],
                                                  (oPSN["t301_modelocoste"].ToString() == "J") ? double.Parse(oProf["jornadas_adaptadas"].ToString()) : double.Parse(oProf["horas_reportadas_proy"].ToString()),
                                                  decimal.Parse(oProf["t330_costecon"].ToString()),
                                                  decimal.Parse(oProf["t330_costerep"].ToString()),
                                                  (oProf["t303_idnodo"] != DBNull.Value)? (int?)oProf["t303_idnodo"]:null,
                                                  (oProf["t313_idempresa"] != DBNull.Value)? (int?)oProf["t313_idempresa"]:null);
                            }
                        }
                        dsProf.Dispose();
                    }

                    #endregion

                    SEGMESPROYECTOSUBNODO.UpdateTraspasoIAP(tr, nSMPSN, true);
                }
            }

            ds.Dispose();

            Conexion.CommitTransaccion(tr);
            sResul = "OK@#@";
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al realizar el traspaso global.", ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
Exemple #12
0
    private Errores CalculaTotalesE(int impMsg, int swMsgs)
    {
        LoadConfig();
        var err1  = new Errores();
        var valor = 0;
        var error = 0;
        var msg   = "";

        _decimales = _numDec == 2 ? "{0:0.00}" : "{0:0.0000}";

        try
        {
            var tasa               = HttpContext.Current.Session["tasa"].ToString();
            var descuentoGlobal    = HttpContext.Current.Session["descuento"].ToString();
            var subTotalComprobate = (decimal)HttpContext.Current.Session["subtotal"];
            var totImpTrasl        = (decimal)HttpContext.Current.Session["tot_imp_trasl"];
            var totImpRet          = (decimal)HttpContext.Current.Session["tot_imp_ret"];
            _total     = (decimal)HttpContext.Current.Session["total"];
            _swRetProv = (bool)HttpContext.Current.Session["sw_ret_prov"];
            Decimal       subtotalCap = 0;
            const decimal descuento   = 0;


            var dt = (DataTable)HttpContext.Current.Session["dtTransportes"];

            //0107 aplicar retencion a esta clave lo que trae el combo o se graba es esto 0107@FLETE
            var impFleteRet = (from DataRow dr in dt.AsEnumerable()
                               where (dr.RowState != DataRowState.Deleted && Convert.ToString(dr["NoIdentificacion"]) == "0107@FLETE")
                               select Convert.ToDecimal(dr["Importe"])).Sum();

            subtotalCap = (from DataRow dr in dt.AsEnumerable()
                           where dr.RowState != DataRowState.Deleted
                           select Convert.ToDecimal(dr["Importe"])).Sum();
            txtSubTcap.Text = string.Format(_decimales, subtotalCap);
            //var ivaCap = (subtotalCap - descuento) * (Decimal.Parse(tasa) / 100);
            var ivaCap = (subtotalCap - descuento) * Decimal.Parse(tasa);
            txtIva.Text = string.Format(_decimales, ivaCap);

            Decimal totRet   = 0;
            Decimal totalCap = 0;
            if (impFleteRet > 0 && _swRetProv == true)
            {
                totRet = (impFleteRet * _pctRetencion);
            }

            txtRetenciones.Text = string.Format(_decimales, totRet);
            totalCap            = Math.Round((subtotalCap - descuento) + (ivaCap - totRet), _numDec, MidpointRounding.AwayFromZero);
            txtTotalSum.Text    = string.Format(_decimales, totalCap);

            var subtotalConceptos = Math.Round((Decimal)HttpContext.Current.Session["total_conceptos"], _numDec, MidpointRounding.AwayFromZero);
            var importeConceptos  = Math.Round((Decimal)HttpContext.Current.Session["importe_conceptos"], _numDec, MidpointRounding.AwayFromZero);



            if (error == 0)
            {
                var minimoTotal = subTotalComprobate - _rango;
                var maximoTotal = subTotalComprobate + _rango;

                if (subtotalCap < minimoTotal || subtotalCap > maximoTotal)
                {
                    if (swMsgs == 1)
                    {
                        msg = "El subtotal de lo capturado es incorrecto por favor verificar";
                    }
                    error = 1;
                }
            }

            if (error == 0)
            {
                var minimoTotal = totImpTrasl - decimal.Parse(".25");
                var maximoTotal = totImpTrasl + decimal.Parse(".25");

                if (ivaCap < minimoTotal || ivaCap > maximoTotal)
                {
                    if (swMsgs == 1)
                    {
                        msg = "El iva de lo capturado es incorrecto por favor verificar";
                    }
                    error = 1;
                }
            }

            if (error == 0 && _swRetProv == true)
            {
                var minimoTotal = totImpRet - decimal.Parse(".25");
                var maximoTotal = totImpRet + decimal.Parse(".25");

                if (totRet < minimoTotal || totRet > maximoTotal)
                {
                    if (swMsgs == 1)
                    {
                        msg = "La retención de lo capturado es incorrecto por favor verificar";
                    }
                    error = 1;
                }
            }


            if (error == 0)
            {
                var minimoTotal = _total - _rango;
                var maximoTotal = _total + _rango;
                if (totalCap >= minimoTotal && totalCap <= maximoTotal && valor == 0)
                {
                    if (swMsgs == 1)
                    {
                        msg = "El total de lo capturado es correcto por favor de click en Generar Factura";
                    }
                    error = 0;
                    HttpContext.Current.Session["sw_captura"] = 1;
                }
                else
                {
                    if (swMsgs == 1)
                    {
                        msg = "El total de lo capturado es incorrecto por favor verificar";
                    }
                    error = 1;
                }
            }


            if (error == 0)
            {
                txtIva.ForeColor         = System.Drawing.Color.Black;
                txtSubTcap.ForeColor     = System.Drawing.Color.Black;
                txtRetenciones.ForeColor = System.Drawing.Color.Black;
                txtTotalSum.ForeColor    = System.Drawing.Color.Black;

                txtTotalSum.BackColor    = System.Drawing.ColorTranslator.FromHtml("#ccffcc");
                txtRetenciones.BackColor = System.Drawing.ColorTranslator.FromHtml("#ccffcc");
                txtIva.BackColor         = System.Drawing.ColorTranslator.FromHtml("#ccffcc");
                txtSubTcap.BackColor     = System.Drawing.ColorTranslator.FromHtml("#ccffcc");
                lblErr.Text    = "";
                lblErr.Visible = false;
            }
            else
            {
                txtIva.ForeColor         = System.Drawing.Color.Black;
                txtSubTcap.ForeColor     = System.Drawing.Color.Black;
                txtRetenciones.ForeColor = System.Drawing.Color.Black;
                txtTotalSum.ForeColor    = System.Drawing.Color.Black;

                txtIva.BackColor         = System.Drawing.ColorTranslator.FromHtml("#ffcccc");
                txtSubTcap.BackColor     = System.Drawing.ColorTranslator.FromHtml("#ffcccc");
                txtRetenciones.BackColor = System.Drawing.ColorTranslator.FromHtml("#ffcccc");
                txtTotalSum.BackColor    = System.Drawing.ColorTranslator.FromHtml("#ffcccc");
                lblErr.Text    = msg;
                lblErr.Visible = true;
            }



            if (totalCap == 0)
            {
                lblErr.Text = "";
                if (swMsgs == 1)
                {
                    msg = "El importe no debe ser 0";
                }
                error = 1;
            }

            if (error != 0)
            {
                if (swMsgs == 1)
                {
                    lblErr.Text = msg;
                }
                err1.Interror = error;
                err1.Message  = msg;
            }
        }
        catch (Exception)
        {
        }
        return(err1);
    }
Exemple #13
0
    private int LlenaCbos()
    {
        var error     = new List <Errores>();
        var ds        = new DataSet();
        var ccTipo    = (string)HttpContext.Current.Session["cc_tipo"];
        var ccCve     = (string)HttpContext.Current.Session["cc_cve"];
        var documento = (string)HttpContext.Current.Session["tipdoc_cve"];

        if (_llaveCfd.rfc_emisor == null)
        {
            LlenaLlave();
        }

        /*inicia combo de transportes*/
        var dtTrans = _factura.cons_trans(error, ccTipo, ccCve);

        ddlTransporte.DataSource = null;
        ddlTransporte.DataSource = dtTrans;

        if (dtTrans.Rows.Count == 0)
        {
            var er = new Errores();
            {
                er.Interror = 3;
                er.Message  = "Sin información";
            }
            error.Add(er);
        }
        else
        {
            ddlTransporte.DataTextField  = "nombre";
            ddlTransporte.DataValueField = "serv_cve";
            ddlTransporte.DataBind();
            ddlTransporte.Items[0].Selected = true;
        }
        /*termina combo de transportes*/
        CboPlaca();
        /*combo claves*/
        if (!error.Any())
        {
            var dtClave = _factura.ConsDatos(error, documento, 0, 0, _llaveCfd.ef_cve, 4);
            ddlNoIdentificacion.DataSource = null;
            ddlNoIdentificacion.DataSource = dtClave;
            if (dtClave.Rows.Count == 0)
            {
                var er = new Errores();
                {
                    er.Interror = 3;
                    er.Message  = "Sin información";
                }
                error.Add(er);
            }
            else
            {
                ddlNoIdentificacion.DataTextField  = "clave";
                ddlNoIdentificacion.DataValueField = "clave";
                ddlNoIdentificacion.DataBind();
                ddlNoIdentificacion.Items[0].Selected = true;
            }
        }
        return(error.Count());
    }
Exemple #14
0
    private string obtenerEstructura(string sNivel)
    {
        string sResul = "";

        try
        {
            System.Text.StringBuilder sb = new System.Text.StringBuilder();
            SqlDataReader             dr = null;

            if (sNivel == "SUBNODO")
            {
                dr = SUBNODO.ObtenerSubNodosUsuarioSegunVisionProyectosTEC(null, (int)Session["UsuarioActual"], false, true);
            }
            else if (sNivel == "NODO")
            {
                dr = NODO.ObtenerNodosUsuarioSegunVisionProyectosTEC(null, (int)Session["UsuarioActual"], false, true);
            }
            else if (sNivel == "SNN1")
            {
                dr = SUPERNODO1.ObtenerSuperNodo1UsuarioSegunVisionProyectosTEC(null, (int)Session["UsuarioActual"], false, true);
            }
            else if (sNivel == "SNN2")
            {
                dr = SUPERNODO2.ObtenerSuperNodo2UsuarioSegunVisionProyectosTEC(null, (int)Session["UsuarioActual"], false, true);
            }
            else if (sNivel == "SNN3")
            {
                dr = SUPERNODO3.ObtenerSuperNodo3UsuarioSegunVisionProyectosTEC(null, (int)Session["UsuarioActual"], false, true);
            }
            else if (sNivel == "SNN4")
            {
                dr = SUPERNODO4.ObtenerSuperNodo4UsuarioSegunVisionProyectosTEC(null, (int)Session["UsuarioActual"], false, true);
            }

            sb.Append("<table id='tblDatos' class='texto MA' style='WIDTH: 350px;'>" + (char)10);
            sb.Append("<colgroup><col style='width:350px;' /></colgroup>" + (char)10);
            sb.Append("<tbody>");
            string sTootTip = "";
            while (dr.Read())
            {
                sb.Append("<tr id='" + dr["IDENTIFICADOR"].ToString() + "'");
                sb.Append("onclick='mm(event)' ondblclick='insertarItem(this)' onmousedown='DD(event)' ");
                sTootTip = "";
                switch (sNivel)
                {
                case "SNN4":
                    if (Utilidades.EstructuraActiva("SN4"))
                    {
                        sTootTip = "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUPERNODO4) + ":</label> " + dr["DES_SN4"].ToString();
                    }
                    break;

                case "SNN3":
                    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();
                    }
                    break;

                case "SNN2":
                    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();
                    }
                    break;

                case "SNN1":
                    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();
                    }
                    break;

                case "NODO":
                    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["DES_NODO"].ToString();
                    break;

                case "SUBNODO":
                    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["DES_NODO"].ToString() + "<br>";
                    sTootTip += "<label style='width:60px'>" + Estructura.getDefCorta(Estructura.sTipoElem.SUBNODO) + ":</label> " + dr["DES_SUBNODO"].ToString();
                    break;
                }

                sb.Append("style='height:16px;noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../../images/info.gif' style='vertical-align:middle'>  Estructura] body=[" + sTootTip + "] hideselects=[off]\">");
                sb.Append("<td style='padding-left:5px;' >" + dr["DENOMINACION"].ToString() + "</td>");
                sb.Append("</tr>" + (char)10);
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");

            sResul = "OK@#@" + sb.ToString();
        }
        catch (System.Exception objError)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al leer el catálogo nivel: " + sNivel, objError);
        }
        return(sResul);
    }
    protected string Grabar(string sEsCV, string strDatos)
    {
        string sResul = "";

        #region abrir 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
        {
            string[] aPreferencia = Regex.Split(strDatos, "///");
            foreach (string oPreferencia in aPreferencia)
            {
                if (oPreferencia == "")
                {
                    continue;
                }
                string[] aValores = Regex.Split(oPreferencia, "##");
                //0. Opcion BD. "I", "U", "D"
                //1. ID Preferencia
                //2. Denominacion
                //3. Defecto
                //4. Orden

                switch (aValores[0])
                {
                case "U":
                    if (sEsCV == "S")
                    {
                        PREFERENCIAUSUARIO.UpdateCatalogoCVT(tr, int.Parse(aValores[1]), Utilidades.unescape(aValores[2]), (aValores[3] == "1") ? true : false, byte.Parse(aValores[4]));
                    }
                    else
                    {
                        PREFERENCIAUSUARIO.UpdateCatalogo(tr, int.Parse(aValores[1]), Utilidades.unescape(aValores[2]), (aValores[3] == "1") ? true : false, byte.Parse(aValores[4]));
                    }
                    break;

                case "D":
                    if (sEsCV == "S")
                    {
                        PREFERENCIAUSUARIO.DeleteCVT(tr, int.Parse(aValores[1]));
                    }
                    else
                    {
                        PREFERENCIAUSUARIO.Delete(tr, int.Parse(aValores[1]));
                    }
                    break;
                }
            }
            Conexion.CommitTransaccion(tr);

            sResul = "OK@#@";
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar las preferencias.", ex, false);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }

        return(sResul);
    }
Exemple #16
0
    protected void Page_Load(object sender, EventArgs e)
    {
        Master.TituloPagina      = "Movimientos de contabilidad";
        Master.bFuncionesLocales = true;

        if (!Page.IsCallback)
        {
            lblCDP.Attributes.Add("title", "Cualificador de proyectos a nivel de " + Estructura.getDefLarga(Estructura.sTipoElem.NODO));
            lblCSN1P.Attributes.Add("title", "Cualificador de proyectos a nivel de " + Estructura.getDefLarga(Estructura.sTipoElem.SUPERNODO1));
            lblCSN2P.Attributes.Add("title", "Cualificador de proyectos a nivel de " + Estructura.getDefLarga(Estructura.sTipoElem.SUPERNODO2));
            lblCSN3P.Attributes.Add("title", "Cualificador de proyectos a nivel de " + Estructura.getDefLarga(Estructura.sTipoElem.SUPERNODO3));
            lblCSN4P.Attributes.Add("title", "Cualificador de proyectos a nivel de " + Estructura.getDefLarga(Estructura.sTipoElem.SUPERNODO4));

            if (!Utilidades.EstructuraActiva("SN4"))
            {
                fstCSN4P.Style.Add("visibility", "hidden");
            }
            if (!Utilidades.EstructuraActiva("SN3"))
            {
                fstCSN3P.Style.Add("visibility", "hidden");
            }
            if (!Utilidades.EstructuraActiva("SN2"))
            {
                fstCSN2P.Style.Add("visibility", "hidden");
            }
            if (!Utilidades.EstructuraActiva("SN1"))
            {
                fstCSN1P.Style.Add("visibility", "hidden");
            }

            lblMonedaImportes.InnerText = Session["DENOMINACION_VDC"].ToString();
            //if (User.IsInRole("DIS") || ConfigurationManager.AppSettings["MOSTRAR_SOLODIS"] == "0")
            divMonedaImportes.Style.Add("visibility", "visible");

            nAnoMax = CONSUCONTA.ObtenerMesMaximo(null);
            if (nAnoMax != 0)
            {
                hdnDesde.Text      = (int.Parse(nAnoMax.ToString().Substring(0, 4)) * 100 + 1).ToString();
                lblAnno1.InnerText = nAnoMax.ToString().Substring(0, 4);
                hdnHasta.Text      = (int.Parse(nAnoMax.ToString().Substring(0, 4)) * 100 + int.Parse(nAnoMax.ToString().Substring(4, 2))).ToString();
                lblAnno2.InnerText = nAnoMax.ToString().Substring(0, 4);
                int      nMes = int.Parse(nAnoMax.ToString().Substring(4, 2));
                ListItem oLI;
                for (int i = 0; i < nMes; i++)
                {
                    oLI = new ListItem(mes[i], (i + 1).ToString());
                    cboHasta.Items.Add(oLI);
                }
                cboHasta.Value = int.Parse(nAnoMax.ToString().Substring(4, 2)).ToString();
            }
            else
            {
                //hdnDesde.Text = (DateTime.Now.Year * 100 + 1).ToString();
                //txtDesde.Text = mes[0] + " " + DateTime.Now.Year.ToString();
                //hdnHasta.Text = (DateTime.Now.Year * 100 + DateTime.Now.Month).ToString();
                //txtHasta.Text = mes[DateTime.Now.Month - 1] + " " + DateTime.Now.Year.ToString();
                hdnDesde.Text = (DateTime.Now.Year * 100 + 1).ToString();
                hdnHasta.Text = (DateTime.Now.Year * 100 + 1).ToString();
            }
            string[] aCriterios = Regex.Split(cargarCriterios(int.Parse(hdnDesde.Text), int.Parse(hdnHasta.Text)), "@#@");
            if (aCriterios[0] == "OK")
            {
                sCriterios = "var js_cri = new Array();\n" + aCriterios[1];
            }
            else
            {
                Master.sErrores = aCriterios[1];
            }

            if (Utilidades.EstructuraActiva("SN4"))
            {
                nEstructuraMinima = 1;
            }
            else if (Utilidades.EstructuraActiva("SN3"))
            {
                nEstructuraMinima = 2;
            }
            else if (Utilidades.EstructuraActiva("SN2"))
            {
                nEstructuraMinima = 3;
            }
            else if (Utilidades.EstructuraActiva("SN1"))
            {
                nEstructuraMinima = 4;
            }

            strTablaHtml = "<tr id='*' class='FA'><td>&lt; Todos &gt;</td></tr>";

            string[] aDatosPref = Regex.Split(getPreferencia(""), "@#@");
            #region Lectura de preferencia

            if (bHayPreferencia && aDatosPref[0] == "OK")
            {
                sHayPreferencia = "true";
                cboConceptoEje.SelectedValue = aDatosPref[2];
                cboCategoria.SelectedValue   = aDatosPref[3];
                cboCualidad.SelectedValue    = aDatosPref[4];
                if (aDatosPref[5] == "1")
                {
                    rdbOperador.Items[0].Selected = true;
                }
                else
                {
                    rdbOperador.Items[1].Selected = true;
                }
                chkSubcontratacion.Checked = (aDatosPref[6] == "1") ? true : false;
                chkCompras.Checked         = (aDatosPref[7] == "1") ? true : false;
                if (aDatosPref[8] == "1")
                {
                    rdbFormato.Items[0].Selected = true;
                }
                else
                {
                    rdbFormato.Items[1].Selected = true;
                }

                //nUtilidadPeriodo = int.Parse(aDatosPref[8]);
                //hdnDesde.Text = aDatosPref[9];
                //txtDesde.Text = aDatosPref[10];
                //hdnHasta.Text = aDatosPref[11];
                //txtHasta.Text = aDatosPref[12];
                sSubnodos = aDatosPref[9];
                //rdbFormato.SelectedValue = aDatosPref[5];
                //
                //hdnProducPref.Text = aDatosPref[43];
            }
            else if (aDatosPref[0] == "Error")
            {
                Master.sErrores += Errores.mostrarError(aDatosPref[1]);
            }
            #endregion

            //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 Procesar(string sAnno, string strNodos)
    {
        string sResul     = "";
        string sEstadoMes = "";
        int    nSMPSN     = 0;

        try
        {
            #region abrir 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

            PROYECTOSUBNODO.EliminarObraEnCurso(tr, int.Parse(sAnno), strNodos);
            DataSet ds = PROYECTOSUBNODO.ObtenerProyectosObraEnCurso(tr, int.Parse(sAnno), strNodos);

            foreach (DataRow oPSN in ds.Tables[0].Rows)
            {
                nSMPSN = (int)oPSN["t325_idsegmesproy_dic"];
                if (nSMPSN == 0)
                {
                    sEstadoMes = SEGMESPROYECTOSUBNODO.EstadoMesACrear(tr, (int)oPSN["t305_idproyectosubnodo"], int.Parse(sAnno) * 100 + 12);
                    nSMPSN     = SEGMESPROYECTOSUBNODO.Insert(tr, (int)oPSN["t305_idproyectosubnodo"], int.Parse(sAnno) * 100 + 12, sEstadoMes, 0, 0, false, 0, 0);
                }

                //Insertamos en diciembre el importe del 20% en negativo.
                DATOECO.Insert(tr, nSMPSN, Constantes.nIdClaseObraEnCurso, "20% Obra en Curso Fin de Año", decimal.Parse(oPSN["20_Obra_Curso_Anno"].ToString()) * -1, null, null, null);

                nSMPSN = (int)oPSN["t325_idsegmesproy_ene"];
                if (nSMPSN == 0)
                {
                    sEstadoMes = SEGMESPROYECTOSUBNODO.EstadoMesACrear(tr, (int)oPSN["t305_idproyectosubnodo"], (int.Parse(sAnno) + 1) * 100 + 1);
                    nSMPSN     = SEGMESPROYECTOSUBNODO.Insert(tr, (int)oPSN["t305_idproyectosubnodo"], (int.Parse(sAnno) + 1) * 100 + 1, sEstadoMes, 0, 0, false, 0, 0);
                }
                //Insertamos en diciembre el importe del 20% en positivo.
                DATOECO.Insert(tr, nSMPSN, Constantes.nIdClaseObraEnCurso, "20% Obra en Curso Fin de Año", decimal.Parse(oPSN["20_Obra_Curso_Anno"].ToString()), null, null, null);
            }
            ds.Dispose();

            Conexion.CommitTransaccion(tr);

            sResul = "OK";
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al realizar el paso del 20% de la obra en curso.", ex, false);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
Exemple #18
0
    private string setPreferencia(string sConceptoEje, string sCategoria, string sCualidad, string sOperadorLogico,
                                  string sSubcontratacion, string sCompras, string sFormato, string sValoresMultiples)
    {
        string sResul = "";

        #region abrir 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
        {
            int nPref = PREFERENCIAUSUARIO.Insertar(tr, (int)Session["IDFICEPI_PC_ACTUAL"], 28,
                                                    (sConceptoEje == "") ? null : sConceptoEje,
                                                    (sCategoria == "") ? null : sCategoria,
                                                    (sCualidad == "") ? null : sCualidad,
                                                    (sOperadorLogico == "") ? null : sOperadorLogico,
                                                    (sSubcontratacion == "") ? null : sSubcontratacion,
                                                    (sCompras == "") ? null : sCompras,
                                                    (sFormato == "") ? null : sFormato,
                                                    null,
                                                    null,
                                                    null,
                                                    null,
                                                    null,
                                                    null,
                                                    null,
                                                    null, null, null, null, null, null, null
                                                    );

            #region Valores Múltiples
            if (sValoresMultiples != "")
            {
                string[] aValores = Regex.Split(sValoresMultiples, "///");
                foreach (string oValor in aValores)
                {
                    if (oValor == "")
                    {
                        continue;
                    }
                    string[] aDatos = Regex.Split(oValor, "##");
                    ///aDatos[0] = concepto
                    ///aDatos[1] = idValor
                    ///aDatos[2] = denominacion

                    PREFUSUMULTIVALOR.Insertar(tr, nPref, byte.Parse(aDatos[0]), aDatos[1], Utilidades.unescape(aDatos[2]));
                }
            }

            #endregion

            Conexion.CommitTransaccion(tr);

            sResul = "OK@#@" + nPref.ToString();
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al guardar la preferencia.", ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
Exemple #19
0
 /// <summary>
 /// Recupera la representación del
 /// segmento de fichero preparada para incorporarse
 /// al mismo.
 /// </summary>
 /// <returns> Representación del
 /// segmento de fichero preparada para incorporarse
 /// al mismo.</returns>
 public virtual string AFichero()
 {
     throw new NotImplementedException(Errores.MostrarMensaje("Conversor.000",
                                                              "método AFichero(string texto) de la clase Conversor"));
 }
Exemple #20
0
    private string getPreferencia(string sIdPrefUsuario)
    {
        StringBuilder sb            = new StringBuilder();
        int           idPrefUsuario = 0;

        try
        {
            SqlDataReader dr = PREFERENCIAUSUARIO.Obtener(null, (sIdPrefUsuario == "") ? null : (int?)int.Parse(sIdPrefUsuario),
                                                          (int)Session["IDFICEPI_PC_ACTUAL"], 28);
            if (dr.Read())
            {
                bHayPreferencia = true;

                sb.Append(dr["t462_idPrefUsuario"].ToString() + "@#@"); //2
                sb.Append(dr["ConceptoEje"].ToString() + "@#@");        //3
                sb.Append(dr["categoria"].ToString() + "@#@");          //4
                sb.Append(dr["cualidad"].ToString() + "@#@");           //5
                sb.Append(dr["OperadorLogico"].ToString() + "@#@");     //6
                sb.Append(dr["Subcontratacion"].ToString() + "@#@");    //7
                sb.Append(dr["Compras"].ToString() + "@#@");            //8
                sb.Append(dr["Formato"].ToString() + "@#@");            //9

                idPrefUsuario = int.Parse(dr["t462_idPrefUsuario"].ToString());
            }
            dr.Close();
            //dr.Dispose();

            #region HTML, IDs
            int      nNivelMinimo = 0;
            bool     bAmbito      = false;
            string[] aID          = null;
            dr = PREFUSUMULTIVALOR.Obtener(null, idPrefUsuario);
            while (dr.Read())
            {
                switch (int.Parse(dr["t441_concepto"].ToString()))
                {
                case 1:
                    if (!bAmbito)
                    {
                        bAmbito      = true;
                        nNivelMinimo = 6;
                    }
                    aID = Regex.Split(dr["t441_valor"].ToString(), "-");
                    if (int.Parse(aID[0]) < nNivelMinimo)
                    {
                        nNivelMinimo = int.Parse(aID[0]);
                    }

                    if (strIDsAmbito != "")
                    {
                        strIDsAmbito += ",";
                    }
                    strIDsAmbito += aID[1];

                    aSubnodos      = PREFUSUMULTIVALOR.SelectSubnodosAmbito(null, aSubnodos, int.Parse(aID[0]), int.Parse(aID[1]));
                    strHTMLAmbito += "<tr id='" + aID[1] + "' tipo='" + aID[0] + "' style='height:16px;' idAux='";
                    strHTMLAmbito += SUBNODO.fgGetCadenaID(aID[0], aID[1]);
                    strHTMLAmbito += "'><td>";

                    switch (int.Parse(aID[0]))
                    {
                    case 1: strHTMLAmbito += "<img src='../../../../images/imgSN4.gif' style='margin-left:2px;margin-right:4px;vertical-align:middle;border: 0px;'>"; break;

                    case 2: strHTMLAmbito += "<img src='../../../../images/imgSN3.gif' style='margin-left:2px;margin-right:4px;vertical-align:middle;border: 0px;'>"; break;

                    case 3: strHTMLAmbito += "<img src='../../../../images/imgSN2.gif' style='margin-left:2px;margin-right:4px;vertical-align:middle;border: 0px;'>"; break;

                    case 4: strHTMLAmbito += "<img src='../../../../images/imgSN1.gif' style='margin-left:2px;margin-right:4px;vertical-align:middle;border: 0px;'>"; break;

                    case 5: strHTMLAmbito += "<img src='../../../../images/imgNodo.gif' style='margin-left:2px;margin-right:4px;vertical-align:middle;border: 0px;'>"; break;

                    case 6: strHTMLAmbito += "<img src='../../../../images/imgSubNodo.gif' style='margin-left:2px;margin-right:4px;vertical-align:middle;border: 0px;'>"; break;
                    }

                    strHTMLAmbito += "<nobr class='NBR W230'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 2:
                    if (strIDsResponsable != "")
                    {
                        strIDsResponsable += ",";
                    }
                    strIDsResponsable  += dr["t441_valor"].ToString();
                    strHTMLResponsable += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 3:
                    if (strIDsNaturaleza != "")
                    {
                        strIDsNaturaleza += ",";
                    }
                    strIDsNaturaleza  += dr["t441_valor"].ToString();
                    strHTMLNaturaleza += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 4:
                    if (strIDsModeloCon != "")
                    {
                        strIDsModeloCon += ",";
                    }
                    strIDsModeloCon  += dr["t441_valor"].ToString();
                    strHTMLModeloCon += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 5:
                    if (strIDsHorizontal != "")
                    {
                        strIDsHorizontal += ",";
                    }
                    strIDsHorizontal  += dr["t441_valor"].ToString();
                    strHTMLHorizontal += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 6: if (strIDsSector != "")
                    {
                        strIDsSector += ",";
                    }
                    strIDsSector  += dr["t441_valor"].ToString();
                    strHTMLSector += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 7: if (strIDsSegmento != "")
                    {
                        strIDsSegmento += ",";
                    }
                    strIDsSegmento  += dr["t441_valor"].ToString();
                    strHTMLSegmento += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 8:
                    if (strIDsCliente != "")
                    {
                        strIDsCliente += ",";
                    }
                    strIDsCliente  += dr["t441_valor"].ToString();
                    strHTMLCliente += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 9:
                    if (strIDsContrato != "")
                    {
                        strIDsContrato += ",";
                    }
                    strIDsContrato  += dr["t441_valor"].ToString();
                    strHTMLContrato += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 10:
                    if (strIDsQn != "")
                    {
                        strIDsQn += ",";
                    }
                    strIDsQn  += dr["t441_valor"].ToString();
                    strHTMLQn += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 11:
                    if (strIDsQ1 != "")
                    {
                        strIDsQ1 += ",";
                    }
                    strIDsQ1  += dr["t441_valor"].ToString();
                    strHTMLQ1 += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 12:
                    if (strIDsQ2 != "")
                    {
                        strIDsQ2 += ",";
                    }
                    strIDsQ2  += dr["t441_valor"].ToString();
                    strHTMLQ2 += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 13:
                    if (strIDsQ3 != "")
                    {
                        strIDsQ3 += ",";
                    }
                    strIDsQ3  += dr["t441_valor"].ToString();
                    strHTMLQ3 += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 14:
                    if (strIDsQ4 != "")
                    {
                        strIDsQ4 += ",";
                    }
                    strIDsQ4  += dr["t441_valor"].ToString();
                    strHTMLQ4 += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 16:
                    aID = Regex.Split(dr["t441_valor"].ToString(), "-");
                    if (strIDsProyecto != "")
                    {
                        strIDsProyecto += ",";
                    }
                    strIDsProyecto += aID[0];

                    strHTMLProyecto += "<tr id='" + aID[0] + "' style='height:16px;' ";
                    strHTMLProyecto += "categoria='" + aID[1] + "' ";
                    strHTMLProyecto += "cualidad='" + aID[2] + "' ";
                    strHTMLProyecto += "estado='" + aID[3] + "'><td>";

                    if (aID[1] == "P")
                    {
                        strHTMLProyecto += "<img src='../../../../images/imgProducto.gif' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>";
                    }
                    else
                    {
                        strHTMLProyecto += "<img src='../../../../images/imgServicio.gif' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>";
                    }

                    switch (aID[2])
                    {
                    case "C": strHTMLProyecto += "<img src='../../../../images/imgIconoContratante.gif' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>"; break;

                    case "J": strHTMLProyecto += "<img src='../../../../images/imgIconoRepJor.gif' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>"; break;

                    case "P": strHTMLProyecto += "<img src='../../../../images/imgIconoRepPrecio.gif' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>"; break;
                    }

                    switch (aID[3])
                    {
                    case "A": strHTMLProyecto += "<img src='../../../../images/imgIconoProyAbierto.gif' title='Proyecto abierto' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>"; break;

                    case "C": strHTMLProyecto += "<img src='../../../../images/imgIconoProyCerrado.gif' title='Proyecto cerrado' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>"; break;

                    case "H": strHTMLProyecto += "<img src='../../../../images/imgIconoProyHistorico.gif' title='Proyecto histórico' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>"; break;

                    case "P": strHTMLProyecto += "<img src='../../../../images/imgIconoProyPresup.gif' title='Proyecto presupuestado' style='margin-left:2px;margin-right:2px;vertical-align:middle;border: 0px;'>"; break;
                    }

                    strHTMLProyecto += "<nobr class='NBR W190' style='margin-left:10px;' onmouseover='TTip(event)'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;

                case 17:
                    if (strIDsProveedores != "")
                    {
                        strIDsProveedores += ",";
                    }
                    strIDsProveedores  += dr["t441_valor"].ToString();
                    strHTMLProveedores += "<tr id='" + dr["t441_valor"].ToString() + "' style='height:16px;'><td><nobr class='NBR W260'>" + dr["t441_denominacion"].ToString() + "</nobr></td></tr>";
                    break;
                }
            }
            dr.Close();
            dr.Dispose();
            #endregion

            for (int i = 0; i < aSubnodos.Count; i++)
            {
                if (i > 0)
                {
                    sSubnodos += ",";
                }
                sSubnodos += aSubnodos[i];
            }

            sb.Append(sSubnodos + "@#@");          //10
            sb.Append(strHTMLAmbito + "@#@");      //11
            sb.Append(strIDsAmbito + "@#@");       //12
            sb.Append(strHTMLResponsable + "@#@"); //13
            sb.Append(strIDsResponsable + "@#@");  //14
            sb.Append(strHTMLNaturaleza + "@#@");  //15
            sb.Append(strIDsNaturaleza + "@#@");   //16
            sb.Append(strHTMLModeloCon + "@#@");   //17
            sb.Append(strIDsModeloCon + "@#@");    //18
            sb.Append(strHTMLHorizontal + "@#@");  //19
            sb.Append(strIDsHorizontal + "@#@");   //20
            sb.Append(strHTMLSector + "@#@");      //21
            sb.Append(strIDsSector + "@#@");       //22
            sb.Append(strHTMLSegmento + "@#@");    //23
            sb.Append(strIDsSegmento + "@#@");     //24
            sb.Append(strHTMLCliente + "@#@");     //25
            sb.Append(strIDsCliente + "@#@");      //26
            sb.Append(strHTMLContrato + "@#@");    //27
            sb.Append(strIDsContrato + "@#@");     //28
            sb.Append(strHTMLQn + "@#@");          //29
            sb.Append(strIDsQn + "@#@");           //30
            sb.Append(strHTMLQ1 + "@#@");          //31
            sb.Append(strIDsQ1 + "@#@");           //32
            sb.Append(strHTMLQ2 + "@#@");          //33
            sb.Append(strIDsQ2 + "@#@");           //34
            sb.Append(strHTMLQ3 + "@#@");          //35
            sb.Append(strIDsQ3 + "@#@");           //36
            sb.Append(strHTMLQ4 + "@#@");          //37
            sb.Append(strIDsQ4 + "@#@");           //38
            sb.Append(strHTMLProyecto + "@#@");    //39
            sb.Append(strIDsProyecto + "@#@");     //40
            sb.Append(strHTMLProveedores + "@#@"); //41
            sb.Append(strIDsProveedores + "@#@");  //42

            return("OK@#@" + sb.ToString());
        }
        catch (Exception ex)
        {
            return("Error@#@" + Errores.mostrarError("Error al obtener la preferencia.", ex, false));
        }
    }
    private string ObtenerDatos(string strEstado)
    {//strEstado T-> todos, A-> activos, B-> de baja
        string        sResul        = "";
        bool          bMostrarBajas = true;
        StringBuilder sb            = new StringBuilder();

        sb.Length = 0;

        try
        {
            if (strEstado == "A")
            {
                bMostrarBajas = false;
            }
            SqlDataReader dr;

            if (Session["ADMINISTRADOR_PC_ACTUAL"].ToString() != "")
            {
                dr = USUARIO.GetProfAdm("", "", "", bMostrarBajas, null);
            }
            else
            {
                dr = USUARIO.GetProfVisibles(int.Parse(Session["UsuarioActual"].ToString()), null, "", "", "", bMostrarBajas);
            }

            sb.Append("<table id='tblDatos' class='texto MAM' style='width: 450px;'>" + (char)10);
            sb.Append("<colgroup><col style='width:20px;'/><col style='width:430px;' /></colgroup>" + (char)10);
            while (dr.Read())
            {
                if (strEstado == "B")//Solo mostrar profesionales de baja
                {
                    if ((int)dr["baja"] == 1)
                    {
                        sb.Append("<tr id='" + dr["t314_idusuario"].ToString() + "'");

                        /* if (dr["t303_denominacion"].ToString() == "")
                         *   sb.Append(" tipo ='E'");
                         * else
                         *   sb.Append(" tipo ='I'");*/
                        sb.Append(" tipo ='" + dr["tipo"].ToString() + "'");
                        sb.Append(" sexo ='" + dr["t001_sexo"].ToString() + "'");
                        sb.Append(" baja ='" + dr["baja"].ToString() + "'");
                        //sb.Append(" onclick='mmse(this)' ondblclick='insertarItem(this)' onmousedown='DD(this)' ");
                        sb.Append("style='height:20px'>");
                        sb.Append("<td></td>");
                        //sb.Append("<td><nobr class='NBR W410' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["t314_idusuario"].ToString()).ToString("#,###") + "<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;'>Empresa:</label>" + dr["empresa"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\" ondblclick='mdpsn(this)'>" + dr["profesional"].ToString() + "</nobr></td>");
                        sb.Append("<td><nobr class='NBR W410' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["t314_idusuario"].ToString()).ToString("#,###") + "<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\" ondblclick='mdpsn(this)'>" + dr["profesional"].ToString() + "</nobr></td>");
                        sb.Append("</tr>" + (char)10);
                    }
                }
                else
                {
                    sb.Append("<tr id='" + dr["t314_idusuario"].ToString() + "'");

                    /* if (dr["t303_denominacion"].ToString() == "")
                     *   sb.Append(" tipo ='E'");
                     * else
                     *   sb.Append(" tipo ='I'");*/
                    sb.Append(" tipo ='" + dr["tipo"].ToString() + "'");
                    sb.Append(" sexo ='" + dr["t001_sexo"].ToString() + "'");
                    sb.Append(" baja ='" + dr["baja"].ToString() + "'");
                    //sb.Append(" onclick='mmse(this)' ondblclick='insertarItem(this)' onmousedown='DD(this)' ");
                    sb.Append("style='height:20px'>");
                    sb.Append("<td></td>");
                    //sb.Append("<td><nobr class='NBR W410' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["t314_idusuario"].ToString()).ToString("#,###") + "<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;'>Empresa:</label>" + dr["empresa"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\" ondblclick='mdpsn(this)'>" + dr["profesional"].ToString() + "</nobr></td>");
                    sb.Append("<td><nobr class='NBR W410' style='noWrap:true;' title=\"cssbody=[dvbdy] cssheader=[dvhdr] header=[<img src='../../../../../images/info.gif' style='vertical-align:middle' />  Información] body=[<label style='width:70px;'>Profesional:</label>" + dr["profesional"].ToString().Replace((char)34, (char)39) + "<br><label style='width:70px;'>Usuario:</label>" + int.Parse(dr["t314_idusuario"].ToString()).ToString("#,###") + "<br><label style='width:70px;'>" + Estructura.getDefCorta(Estructura.sTipoElem.NODO) + ":</label>" + dr["t303_denominacion"].ToString().Replace((char)34, (char)39) + "] hideselects=[off]\" ondblclick='mdpsn(this)'>" + dr["profesional"].ToString() + "</nobr></td>");
                    sb.Append("</tr>" + (char)10);
                }
            }
            dr.Close();
            dr.Dispose();

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

            sResul    = "OK@#@" + sb.ToString();
            sb.Length = 0; //Para liberar memoria

            return(sResul);
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al obtener los datos de consulta de proyectos", ex);
        }

        return(sResul);
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsCallback)
        {
            try
            {
                if (Session["IDRED"] == null)
                {
                    try
                    {
                        Response.Redirect("~/SesionCaducadaModal.aspx", true);
                    }
                    catch (System.Threading.ThreadAbortException) { return; }
                }

                if (Request.QueryString["T"].ToString() == "P")
                {
                    this.Title = "Producción por transferencia";
                }
                else
                {
                    this.Title = "Ingresos por transferencia";
                }

                #region Monedas y denominaciones
                sMonedaProyecto             = Session["MONEDA_PROYECTOSUBNODO"].ToString();
                lblMonedaProyecto.InnerText = MONEDA.getDenominacion(Session["MONEDA_PROYECTOSUBNODO"].ToString());

                if (Session["MONEDA_VDP"] == null)
                {
                    sMonedaImportes             = sMonedaProyecto;
                    lblMonedaImportes.InnerText = MONEDA.getDenominacionImportes(sMonedaImportes);
                }
                else
                {
                    sMonedaImportes             = Session["MONEDA_VDP"].ToString();
                    lblMonedaImportes.InnerText = MONEDA.getDenominacionImportes(Session["MONEDA_VDP"].ToString());
                }
                #endregion

                //if (User.IsInRole("DIS") || ConfigurationManager.AppSettings["MOSTRAR_SOLODIS"] == "0")
                divMonedaImportes.Style.Add("visibility", "visible");

                string   strTabla = getDatosEconomicos(Request.QueryString["nSegMesProy"], sMonedaImportes);
                string[] aTabla   = Regex.Split(strTabla, "@#@");
                if (aTabla[0] != "Error")
                {
                    this.strTablaHTML = aTabla[1];
                }
                else
                {
                    sErrores = aTabla[1];
                }
            }
            catch (Exception ex)
            {
                this.sErrores = Errores.mostrarError("Error al obtener 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 Grabar(string sConsulta, string sIntegrantes)
    {//En el primer parametro de entrada tenemos codCons#descCons
        //y en el segundo una lista de codigos de personas separados por comas (persona#estado,)
        string         sCad, sResul = "", sOperacion;
        int            iCodCons, iEmpleado;
        SqlConnection  oConn = null;
        SqlTransaction tr    = null;

        try
        {
            iCodCons = int.Parse(sConsulta);
            #region abrir 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

            if (sIntegrantes != "")
            {//Con la cadena generamos una lista y la recorremos para grabar cada elemento
                string[] aTareas = Regex.Split(sIntegrantes, @",");

                for (int i = 0; i < aTareas.Length - 1; i++)
                {
                    sCad = aTareas[i];
                    if (sCad != "")
                    {
                        string[] aElem = Regex.Split(sCad, @"##");
                        sOperacion = aElem[0];
                        iEmpleado  = System.Convert.ToInt32(aElem[1]);
                        switch (sOperacion)
                        {
                        case "D":
                            USUARIO_CONSULTAPERSONAL.Delete(tr, iEmpleado, iCodCons);
                            break;

                        case "U":
                            USUARIO_CONSULTAPERSONAL.Update(tr, iEmpleado, iCodCons, (aElem[2] == "1") ? true : false);
                            break;

                        case "I":
                            USUARIO_CONSULTAPERSONAL.Insert(tr, iEmpleado, iCodCons, (aElem[2] == "1") ? true : false);
                            break;
                        } //switch
                    }
                }         //for
            }
            //Cierro transaccion
            Conexion.CommitTransaccion(tr);
            //sCad = ObtenerIntegrantes(iCodCons);
            sResul = "OK@#@" + iCodCons;// +"@#@" + sCad.Substring(5);
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar la lista de integrantes", ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }
Exemple #24
0
        // Ordena = campo de la select  TipoOrden = 1 asc 2 desc

        //public DetalleTarea()
        //{
        //    this.Title = "Detalle de la tarea";

        //    ArrayList aFuncionesJavaScript = new ArrayList();
        //    aFuncionesJavaScript.Add("Capa_Presentacion/Defiencias/Functions/funciones.js");
        //    aFuncionesJavaScript.Add("JavaScript/funciones.js");
        //    this.FuncionesJavaScript = aFuncionesJavaScript;
        //}

        protected void Page_Load(object sender, System.EventArgs e)
        {
            if (!Page.IsCallback)
            {
                try
                {
                    if (Session["IDRED"] == null)
                    {
                        try
                        {
                            Response.Redirect("~/SesionCaducadaModal.aspx", true);
                        }
                        catch (System.Threading.ThreadAbortException) { return; }
                    }
                    //if (Request.QueryString["bNueva"] == "false")
                    //    strTitulo = "Modificación de la tarea";
                    //else
                    //    strTitulo = "Creación de una nueva tarea";

                    strTablaHtmlCatalogo      = "<table id='tblCatalogo' class='texto' style='width: 390px' cellSpacing='0' cellpadding='0' align='left' border='0'></table>";
                    strTablaHtmlSeleccionados = "<table id='tblSeleccionados' class='texto' style='width: 390px' cellSpacing='0' cellpadding='0' align='left' border='0'></table>";

                    strTitulo = "Detalle tarea";

                    cboAvance.Items.Insert(0, new ListItem("", "0"));
                    cboAvance.Items[0].Selected = true;

                    cboRtado.Items.Insert(0, new ListItem("", "0"));
                    cboRtado.Items[0].Selected = true;

                    hdnIDArea.Text      = Request.QueryString["IDAREA"].ToString();
                    hdnIDDefi.Text      = Request.QueryString["IDDEFICIENCIA"].ToString();
                    txtDeficiencia.Text = Request.QueryString["DEFICIENCIA"].ToString();
                    txtArea.Text        = Request.QueryString["AREA"];
                    hdnModoLectura.Text = Session["MODOLECTURA"].ToString();
                    hdnEstado.Text      = Request.QueryString["ESTADO"];
                    //Si anulada o aprobada ponemos en modo lectura
                    if (hdnEstado.Text == "12" || hdnEstado.Text == "11")
                    {
                        hdnModoLectura.Text = "1";
                    }

                    if (Request.QueryString["bNueva"].ToString() == "false")
                    {
                        #region Modificar tarea
                        #region Carga datos Tarea
                        hdnIDTarea.Text = Request.QueryString["IDTAREA"].ToString();
                        dr = null;
                        dr = TAREA.Select(null, short.Parse(Request.QueryString["IDTAREA"]));
                        if (dr.Read())
                        {
                            txtDenominacion.Text = (string)dr["T072_DENOMINACION"];

                            if (dr["T072_FECINIPREV"] == System.DBNull.Value)
                            {
                                txtFechaInicioPrevista.Text = "";
                            }
                            else
                            {
                                txtFechaInicioPrevista.Text = ((DateTime)dr["T072_FECINIPREV"]).ToShortDateString();
                            }

                            if (dr["T072_FECINIREAL"] == System.DBNull.Value)
                            {
                                txtFechaInicioReal.Text = "";
                            }
                            else
                            {
                                txtFechaInicioReal.Text = ((DateTime)dr["T072_FECINIREAL"]).ToShortDateString();
                            }

                            if (dr["T072_FECFINPREV"] == System.DBNull.Value)
                            {
                                txtFechaFinPrevista.Text = "";
                            }
                            else
                            {
                                txtFechaFinPrevista.Text = ((DateTime)dr["T072_FECFINPREV"]).ToShortDateString();
                            }

                            if (dr["T072_FECFINREAL"] == System.DBNull.Value)
                            {
                                txtFechaFinReal.Text = "";
                            }
                            else
                            {
                                txtFechaFinReal.Text = ((DateTime)dr["T072_FECFINREAL"]).ToShortDateString();
                            }

                            txtDescripcion.Text = (string)dr["T072_DESCRIPCION"];

                            txtIdTarea.Text         = dr["T072_IDTAREA"].ToString();
                            txtCausas.Text          = (string)dr["T072_CAUSA"];
                            txtIntervenciones.Text  = (string)dr["T072_INTERVENCION"];
                            txtConsideraciones.Text = (string)dr["T072_CONSIDERACION"];
                            cboRtado.SelectedValue  = dr["T072_RESULTADO"].ToString();
                            cboAvance.SelectedValue = dr["T072_AVANCE"].ToString();
                            hdnAvanceIn.Text        = dr["T072_AVANCE"].ToString();
                        }
                        dr.Close();
                        dr.Dispose();
                        dr = null;
                        #endregion
                        #region Solapa Especialistas

                        hdnEsCoordinador.Text = Request.QueryString["ES_COORDINADOR"].ToString();

                        strTablaHtmlCatalogo = CargarEspecialistas(int.Parse(hdnIDArea.Text));
                        string[] aTablaHtmlCatalogo = Regex.Split(strTablaHtmlCatalogo, @"##");

                        strTablaHtmlCatalogo  = aTablaHtmlCatalogo[0];
                        hdnEspecialistas.Text = aTablaHtmlCatalogo[1];
                        #endregion
                        if (hdnEsCoordinador.Text == "true")
                        {
                            this.hdnBusqueda.Text = "S";
                        }

                        strTablaHtmlSeleccionados = CargarEspecialistasSeleccionados(int.Parse(txtIdTarea.Text));

                        hdnAdmin.Text = Request.QueryString["ADMIN"];

                        int intCoordinador = (Request.QueryString["COORDINADOR"].ToString() == "") ? 0 : int.Parse(Request.QueryString["COORDINADOR"].ToString());

                        if (
                            (
                                (hdnModoLectura.Text == "1" || hdnEsTecnico.Text == "true")
                                &&
                                (hdnAdmin.Text != "A" && hdnEsCoordinador.Text != "true" || (hdnEsCoordinador.Text == "true" && intCoordinador != int.Parse(Session["IDFICEPI"].ToString())
                                                                                             )
                                )
                            )
                            ||
                            (hdnEstado.Text == "2" || hdnEstado.Text == "4" || hdnEstado.Text == "7" || hdnEstado.Text == "9" || hdnEstado.Text == "12" || hdnEstado.Text == "11")
                            ||
                            (hdnEsCoordinador.Text == "false" && hdnEsTecnico.Text == "false")
                            )
                        {
                            System.Web.UI.Control Area = this.FindControl("frmDatos");
                            ModoLectura.Poner(Area.Controls);
                            //if (hdnEsTecnico.Text == "true" && (hdnEstado.Text != "12" && hdnEstado.Text != "11"))
                            if (hdnEsTecnico.Text == "true" && hdnEstado.Text == "8")
                            {
                                Habilitar_campos_Tecnico();
                                hdnModoLectura.Text = "0";
                            }
                            if ((hdnEsCoordinador.Text == "false" && hdnEsTecnico.Text == "false") || (hdnEsCoordinador.Text == "false" && hdnEsTecnico.Text == "true" && hdnEstado.Text != "8") || (hdnEsCoordinador.Text == "true" && (hdnEstado.Text == "0" || hdnEstado.Text == "2" || hdnEstado.Text == "4" || hdnEstado.Text == "7" || hdnEstado.Text == "9")))
                            {
                                hdnModoLectura.Text = "1";
                            }
                        }
                        //12/05/2016 Por petición de Víctor solo podrán modificar fechas de tarea los coordinadores
                        //y en Órdenes(deficiencias) cuyos estados sean Tramitada, Aceptada, Es estudio, Pte. de resolución y En resolución
                        if (hdnModoLectura.Text == "0" && hdnEsCoordinador.Text == "true")
                        {
                            if (FechaModificable(hdnEstado.Text))
                            {
                                PonerEventosFecha();
                            }
                        }
                        #endregion
                    }
                    else
                    {
                        PonerEventosFecha();
                        hdnEsCoordinador.Text = "true";
                        strTablaHtmlCatalogo  = CargarEspecialistas(int.Parse(hdnIDArea.Text));
                        string[] aTablaHtmlCatalogo = Regex.Split(strTablaHtmlCatalogo, @"##");

                        strTablaHtmlCatalogo  = aTablaHtmlCatalogo[0];
                        hdnEspecialistas.Text = aTablaHtmlCatalogo[1];
                    }

                    this.txtArea.Attributes.Add("readonly", "readonly");
                    this.txtDeficiencia.Attributes.Add("readonly", "readonly");
                    //this.txtDenominacion.Attributes.Add("readonly", "readonly");
                    this.txtIdTarea.Attributes.Add("readonly", "readonly");
                }
                catch (Exception ex)
                {
                    hdnErrores.Text = Errores.mostrarError("Error al obtener 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");
                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);
            }
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            if (Session["IDRED"] == null)
            {
                try
                {
                    Response.Redirect("~/SesionCaducadaModal.aspx", true);
                }
                catch (System.Threading.ThreadAbortException) { return; }
            }

            if (Request.QueryString["tiporesp"] != null)
            {
                tiporesp = Request.QueryString["tiporesp"].ToString();
            }
            if (Request.QueryString["idNodo"] != null)
            {
                idNodo = Request.QueryString["idNodo"].ToString();
                sNodo  = Request.QueryString["sNodo"].ToString();
            }

            switch (tiporesp)
            {
            case "proyecto": this.Title = "Selección de responsable de proyecto"; break;

            case "contrato": this.Title = "Selección de responsable de contrato"; break;

            case "crp":
                this.Title  = "Selección de responsable de proyecto";
                sResp       = "CRP";
                sNoResp     = "No CRP";
                sTTipResp   = "Candidato a responsable de proyecto";
                sTTipNoResp = "No es candidato a responsable de proyecto";
                sPrefijoCRP = "CRP";
                if (!SUPER.Capa_Negocio.Utilidades.EsAdminProduccion())
                {
                    chkBajas.Disabled = true;
                }
                if (Request.QueryString["tiporeplica"] != null)
                {
                    tiporeplica = Request.QueryString["tiporeplica"].ToString();
                }
                if (tiporeplica == "P")
                {
                    txtApellido1.Enabled = false;
                    txtApellido2.Enabled = false;
                    txtNombre.Enabled    = false;
                }
                break;
            }

            if (tiporesp == "crp" && idNodo != "")
            {
                string   strTabla = getResponsables("", "", "", "0", tiporesp, idNodo);
                string[] aTabla   = Regex.Split(strTabla, "@#@");
                if (aTabla[0] == "OK")
                {
                    this.strTablaHTML = aTabla[1];
                }
                else
                {
                    sErrores += Errores.mostrarError(aTabla[1]);
                }
            }
        }
        catch (Exception ex)
        {
            sErrores += Errores.mostrarError("Error al obtener 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);
    }
Exemple #26
0
        private string Grabar(byte byteNueva, string sDenominacion, string sDescripcion, string sFechaInicioPrevista,
                              string sFechaFinPrevista, string sFechaInicioReal, string sFechaFinReal, string sCausas,
                              string sIntervenciones, string sConsideraciones, short shAvance, byte byRtdo, string sRecursos,
                              string sEspecialistas, string sEspecialistasAreas, string sIDTarea, short shAvanceOld)
        {
            string sResul;

            if (sIDTarea == "-1")
            {
                sIDTarea = hdnIDTarea.Text;
            }
            ;

            try
            {
                oConn = GESTAR.Capa_Negocio.Conexion.Abrir();
                tr    = GESTAR.Capa_Negocio.Conexion.AbrirTransaccion(oConn);
            }
            catch (Exception ex)
            {
                if (oConn.State == ConnectionState.Open)
                {
                    GESTAR.Capa_Negocio.Conexion.Cerrar(oConn);
                }
                return("N@@" + Errores.mostrarError("Error al abrir la conexión", ex));
            }

            DateTime?dFechaInicioPrevista = null;

            if (sFechaInicioPrevista != "")
            {
                dFechaInicioPrevista = DateTime.Parse(sFechaInicioPrevista);
            }

            DateTime?dFechaFinPrevista = null;

            if (sFechaFinPrevista != "")
            {
                dFechaFinPrevista = DateTime.Parse(sFechaFinPrevista);
            }

            DateTime?dFechaInicioReal = null;

            if (sFechaInicioReal != "")
            {
                dFechaInicioReal = DateTime.Parse(sFechaInicioReal);
            }

            DateTime?dFechaFinReal = null;

            if (sFechaFinReal != "")
            {
                dFechaFinReal = DateTime.Parse(sFechaFinReal);
            }

            if (byteNueva == 0)
            {
                try
                {
                    TAREA.Update(tr, int.Parse(sIDTarea), int.Parse(hdnIDDefi.Text),
                                 sDenominacion, sDescripcion, dFechaInicioPrevista,
                                 dFechaFinPrevista, dFechaInicioReal, dFechaFinReal,
                                 sCausas, sIntervenciones, sConsideraciones, shAvance, byRtdo,
                                 int.Parse(Session["IDFICEPI"].ToString()));
                    intContador = int.Parse(sIDTarea);
                }
                catch (System.Exception objError)
                {
                    sResul = Errores.mostrarError("Error al modificar la tarea.", objError);
                    GESTAR.Capa_Negocio.Conexion.CerrarTransaccion(tr, oConn);
                    return("N@@" + sResul);
                }
            }
            else
            {
                try
                {
                    intContador = TAREA.Insert(tr, int.Parse(hdnIDDefi.Text), sDenominacion,
                                               sDescripcion, dFechaInicioPrevista,
                                               dFechaFinPrevista, dFechaInicioReal, dFechaFinReal,
                                               sCausas, sIntervenciones, sConsideraciones, shAvance, byRtdo,
                                               int.Parse(Session["IDFICEPI"].ToString()));
                    hdnIDTarea.Text = intContador.ToString();
                    sIDTarea        = hdnIDTarea.Text;
                }
                catch (System.Exception objError)
                {
                    sResul = Errores.mostrarError("Error al crear la tarea.", objError);
                    GESTAR.Capa_Negocio.Conexion.CerrarTransaccion(tr, oConn);
                    return("N@@" + sResul);
                }
            }

            if (sRecursos == "S")
            {
                try
                {
                    TAREA_USUARIO.Delete(tr, int.Parse(sIDTarea));
                }
                catch (System.Exception objError)
                {
                    sResul = Errores.mostrarError("Error al borrar los especialistas.", objError);
                    GESTAR.Capa_Negocio.Conexion.CerrarTransaccion(tr, oConn);
                    return("N@@" + sResul);
                }

                string[] aEspecialistas = Regex.Split(sEspecialistas, ",");

                for (int j = 0; j < aEspecialistas.Length; j++)
                {
                    if (aEspecialistas[j] == "")
                    {
                        continue;
                    }

                    try
                    {
                        string[] aID = Regex.Split(aEspecialistas[j], "/");
                        TAREA_USUARIO.Insert(tr, int.Parse(sIDTarea), int.Parse(aID[0]));
                    }
                    catch (System.Exception objError)
                    {
                        sResul = Errores.mostrarError("Error al insertar los especialistas.", objError);
                        GESTAR.Capa_Negocio.Conexion.CerrarTransaccion(tr, oConn);
                        return("N@@" + sResul);
                    }
                }
            }

            string[] aEspecialistasAreas = Regex.Split(sEspecialistasAreas, ",");

            for (int j = 0; j < aEspecialistasAreas.Length; j++)
            {
                if (aEspecialistasAreas[j] == "")
                {
                    continue;
                }
                try
                {
                    string[] aID = Regex.Split(aEspecialistasAreas[j], "/");
                    Integrante.Insertar(tr, int.Parse(hdnIDArea.Text), int.Parse(aID[0]), "5");
                }
                catch (System.Exception objError)
                {
                    sResul = Errores.mostrarError("Error al insertar los Especialistas-Areas.", objError);
                    GESTAR.Capa_Negocio.Conexion.CerrarTransaccion(tr, oConn);
                    return("N@@" + sResul);
                }
            }

            try
            {
                GESTAR.Capa_Negocio.Conexion.CommitTransaccion(tr);

                sResul = "";
            }
            catch (Exception ex)
            {
                GESTAR.Capa_Negocio.Conexion.CerrarTransaccion(tr);
                sResul = "N@@" + Errores.mostrarError("Error al grabar los datos ( commit )", ex);
            }
            finally
            {
                GESTAR.Capa_Negocio.Conexion.Cerrar(oConn);
            }

            string strMensaje = "";
            string strAsunto  = "";
            string strTO;

            string[] aTecnicosIn  = Regex.Split(this.hdnCorreoEspecialistaIn.Text, ",");
            string[] aTecnicosOut = Regex.Split(sEspecialistas, ",");

            // CORREO (TECNICOS) BAJAS, ALTAS CUANDO EL ESTADO DE LA DEFICIENCIA ESTÁ EN RESOLUCIÓN
            if (hdnEstado.Text == "8")
            {
                // NOTIFICACION BAJAS

                int intEncontrado;

                for (int j = 0; j < aTecnicosIn.Length; j++)
                {
                    if (aTecnicosIn[j] == "")
                    {
                        continue;
                    }
                    intEncontrado = 0;

                    for (int i = 0; i < aTecnicosOut.Length; i++)
                    {
                        if (aTecnicosIn[j] == aTecnicosOut[i])
                        {
                            intEncontrado = 1;
                            break;
                        }
                    }

                    if (intEncontrado == 0)
                    {
                        strAsunto  = "Desasignación de tarea";
                        strMensaje = Session["NOMBRE"] + @" le ha desasignado de una tarea.</p><br><br><br><br>";

                        strMensaje += @"<table id='tblContenido' width='100%' class='texto' border='0' cellspacing='0' cellpadding='0'>";
                        strMensaje += @"<tr><td width='15%' valign='top'><LABEL class='TITULO'>Área:</LABEL></td>";
                        strMensaje += @"<td width='85%' valign='top'>" + Request.QueryString["AREA"].ToString() + "<BR><BR></td><tr>";
                        strMensaje += @"<tr><td width='15%' valign='top'><LABEL class='TITULO'>Orden:</LABEL></td>";
                        strMensaje += @"<td width='85%' valign='top'>" + Request.QueryString["IDDEFICIENCIA"].ToString() + "-" + Request.QueryString["DEFICIENCIA"].ToString() + "<BR><BR></td><tr>";
                        strMensaje += @"<tr><td width='15%' valign='top'><LABEL class='TITULO'>Tarea:</LABEL></td>";
                        strMensaje += @"<td width='85%' valign='top'>" + sIDTarea + "-" + sDenominacion + "</td><tr>";
                        strMensaje += @"</table>";

                        string[] aID = Regex.Split(aTecnicosIn[j], "/");
                        //strAsunto += " Usuario ( " + aID[0] + "/" + aID[1] +" ) NOTIFICACION BAJAS";

                        //CASO BAJA

                        if (aID[1].Trim() == "")
                        {
                            strMensaje = " La aplicación GESTAR ha intentado enviar correo al usuario con código FICEPI " + aID[0] + " y no ha podido. EL motivo es que no tiene asignado código de red. Por favor, rogamos se corrija esta situación. ";
                            strTO      = "IntranetCau"; //caso de una persona que no tenga cod_red
                            Correo.Enviar(strAsunto, strMensaje, strTO, "", "", "", 13);
                            strTO = "EDA";
                        }
                        else
                        {
                            strTO = aID[1];
                        }

                        Correo.Enviar(strAsunto, strMensaje, strTO, "", "", "", 2);
                    }
                }

                // NOTIFICACION ALTAS

                for (int j = 0; j < aTecnicosOut.Length; j++)
                {
                    if (aTecnicosOut[j] == "")
                    {
                        continue;
                    }
                    intEncontrado = 0;

                    for (int i = 0; i < aTecnicosIn.Length; i++)
                    {
                        if (aTecnicosOut[j] == aTecnicosIn[i])
                        {
                            intEncontrado = 1;
                            break;
                        }
                    }
                    if (intEncontrado == 0)
                    {
                        strAsunto  = "Asignación de tarea";
                        strMensaje = @"<p>" + Session["NOMBRE"] + " le ha asignado como <LABEL class='TITULO'>ESPECIALISTA</LABEL></p><br><br><br><br>";

                        strMensaje += @"<table id='tblContenido' width='100%' class='texto' border='0' cellspacing='0' cellpadding='0'>";
                        strMensaje += @"<tr><td width='15%' valign='top'><LABEL class='TITULO'>Área:</LABEL></td>";
                        strMensaje += @"<td width='85%' valign='top'>" + Request.QueryString["AREA"].ToString() + "<BR><BR></td><tr>";
                        strMensaje += @"<tr><td width='15%' valign='top'><LABEL class='TITULO'>Orden:</LABEL></td>";
                        strMensaje += @"<td width='85%' valign='top'>" + Request.QueryString["IDDEFICIENCIA"].ToString() + "-" + Request.QueryString["DEFICIENCIA"].ToString() + "<BR><BR></td><tr>";
                        strMensaje += @"<tr><td width='15%' valign='top'><LABEL class='TITULO'>Tarea:</LABEL></td>";
                        strMensaje += @"<td width='85%' valign='top'>" + sIDTarea + "-" + sDenominacion + "</td><tr>";
                        strMensaje += @"</table>";

                        string[] aID = Regex.Split(aTecnicosOut[j], "/");
                        //strAsunto += " Usuario ( " + aID[0] + "/" + aID[1] +" ) NOTIFICACION ALTAS";

                        //CASO ALTA

                        if (aID[1].Trim() == "")
                        {
                            strMensaje = " La aplicación GESTAR ha intentado enviar correo al usuario con código FICEPI " + aID[0] + " y no ha podido. EL motivo es que no tiene asignado código de red. Por favor, rogamos se corrija esta situación. ";
                            strTO      = "IntranetCau"; //caso de una persona que no tenga cod_red
                            Correo.Enviar(strAsunto, strMensaje, strTO, "", "", "", 13);
                            strTO = "EDA";
                        }
                        else
                        {
                            strTO = aID[1];
                        }
                        Correo.Enviar(strAsunto, strMensaje, strTO, "", "", "", 2);
                    }
                }
                if (shAvance != shAvanceOld)
                {
                    string[] aID = Regex.Split(Request.QueryString["CORREOCOORDINADOR"].ToString(), "/");

                    strAsunto = "Avance de tarea";

                    cboAvance.SelectedValue = shAvance.ToString();
                    strMensaje = Session["NOMBRE"] + @" ha modificado el % de avance.<BR><BR><BR><BR>";

                    strMensaje += @"<table id='tblContenido' width='90%' class='texto' border='0' cellspacing='0' cellpadding='0'>";
                    strMensaje += @"<tr><td width='20%' valign='top'>";
                    strMensaje += @"<LABEL class='TITULO'>Área:</LABEL>";
                    strMensaje += @"</td><td valign='top'>";
                    strMensaje += Request.QueryString["AREA"] + "<br><br>";
                    strMensaje += @"</td></tr>";
                    strMensaje += @"<tr><td valign='top'>";
                    strMensaje += @"<LABEL class='TITULO'>Orden:</LABEL>";
                    strMensaje += @"</td><td valign='top'>";
                    strMensaje += Request.QueryString["IDDEFICIENCIA"].ToString() + "-" + Request.QueryString["DEFICIENCIA"].ToString() + "<br><br>";
                    strMensaje += @"</td></tr>";

                    strMensaje += @"<tr><td valign='top'>";
                    strMensaje += @"<LABEL class='TITULO'>Tarea:</LABEL>";
                    strMensaje += @"</td><td valign='top'>";
                    strMensaje += sIDTarea + "-" + sDenominacion + "<br><br>";
                    strMensaje += @"</td></tr>";

                    strMensaje += @"<tr><td valign='top'>";
                    strMensaje += @"<LABEL class='TITULO'>Avance:</LABEL>";
                    strMensaje += @"</td><td valign='top'>";

                    if (shAvance != 0)
                    {
                        strMensaje += cboAvance.SelectedItem.Text;
                    }

                    strMensaje += @"<br><br></td></tr>";

                    strMensaje += @"<tr><td valign='top'>";
                    strMensaje += @"<LABEL class='TITULO'>Causas:</LABEL>";
                    strMensaje += @"</td><td valign='top'>";
                    strMensaje += sCausas.Replace(((char)10).ToString().Replace((char)34, (char)39), "<br>") + "<br><br>";
                    strMensaje += @"</td></tr>";

                    strMensaje += @"<tr><td valign='top'>";
                    strMensaje += @"<LABEL class='TITULO'>Intervenciones:</LABEL>";
                    strMensaje += @"</td><td valign='top'>";
                    strMensaje += sIntervenciones.Replace(((char)10).ToString().Replace((char)34, (char)39), "<br>") + "<br><br>";
                    strMensaje += @"</td></tr>";

                    strMensaje += @"<tr><td valign='top'>";
                    strMensaje += @"<LABEL class='TITULO'>Consideraciones - Comentarios:</LABEL>";
                    strMensaje += @"</td><td valign='top'>";
                    strMensaje += sConsideraciones.Replace(((char)10).ToString().Replace((char)34, (char)39), "<br>") + "<br><br>";
                    strMensaje += @"</td></tr>";

                    strMensaje += @"</table>";

                    //strAsunto += " Usuario ( " + aID[0] + "/" + aID[1] +" ) MODIFICACION DE LA SOLAPA DE PARTES";

                    if (aID[1].Trim() == "")
                    {
                        strMensaje = " La aplicación GESTAR ha intentado enviar correo al usuario con código FICEPI " + aID[0] + " y no ha podido. EL motivo es que no tiene asignado código de red. Por favor, rogamos se corrija esta situación. ";
                        strTO      = "IntranetCau"; //caso de una persona que no tenga cod_red
                        Correo.Enviar(strAsunto, strMensaje, strTO, "", "", "", 13);
                        strTO = "EDA";
                    }
                    else
                    {
                        strTO = aID[1];
                    }
                    Correo.Enviar(strAsunto, strMensaje, strTO, "", "", "", 2);
                }
            }

            // FIN CORREO

            return(sResul);
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            Master.nBotonera = 8;
            Master.FuncionesJavaScript.Add("Javascript/boxover.js?14112017");
            Master.FuncionesJavaScript.Add("Javascript/fechas.js");
            Master.TituloPagina        = "Consulta de mis notas";
            Master.bFuncionesLocales   = true;
            Master.Botonera.ItemClick += new ToolBarEventHandler(this.Botonera_Click);

            if (!Page.IsCallback)
            {
                if (Request.QueryString["so"] != null)
                {
                    if (Session["GVT_FILTROSSOLICITUDESADM"] != null)
                    {
                        Session["GVT_FILTROSSOLICITUDESADM"] = null;
                    }

                    hdnDesde.Text = (DateTime.Today.AddMonths(-1).Year * 100 + DateTime.Today.AddMonths(-1).Month).ToString();
                    txtDesde.Text = mes[DateTime.Today.AddMonths(-1).Month - 1] + " " + DateTime.Today.AddMonths(-1).Year.ToString();

                    hdnHasta.Text = (DateTime.Today.Year * 100 + DateTime.Today.Month).ToString();
                    txtHasta.Text = mes[DateTime.Today.Month - 1] + " " + DateTime.Today.Year.ToString();
                }
                else
                {
                    string[] aFiltros = (string[])Session["GVT_FILTROSSOLICITUDESADM"];
                    chkEstadoT.Checked = (aFiltros[0].IndexOf("T") > -1) ? true : false;
                    chkEstadoS.Checked = (aFiltros[0].IndexOf("S") > -1) ? true : false;
                    chkEstadoN.Checked = (aFiltros[0].IndexOf("N") > -1) ? true : false;
                    chkEstadoR.Checked = (aFiltros[0].IndexOf("R") > -1) ? true : false;
                    chkEstadoA.Checked = (aFiltros[0].IndexOf("A") > -1) ? true : false;
                    chkEstadoB.Checked = (aFiltros[0].IndexOf("B") > -1) ? true : false;
                    chkEstadoL.Checked = (aFiltros[0].IndexOf("L") > -1) ? true : false;
                    chkEstadoO.Checked = (aFiltros[0].IndexOf("O") > -1) ? true : false;
                    chkEstadoC.Checked = (aFiltros[0].IndexOf("C") > -1) ? true : false;
                    chkEstadoX.Checked = (aFiltros[0].IndexOf("X") > -1) ? true : false;

                    chkMotivo1.Checked = (aFiltros[1].IndexOf("1") > -1) ? true : false;
                    chkMotivo4.Checked = (aFiltros[1].IndexOf("4") > -1) ? true : false;
                    chkMotivo2.Checked = (aFiltros[1].IndexOf("2") > -1) ? true : false;
                    chkMotivo5.Checked = (aFiltros[1].IndexOf("5") > -1) ? true : false;
                    chkMotivo3.Checked = (aFiltros[1].IndexOf("3") > -1) ? true : false;
                    chkMotivo6.Checked = (aFiltros[1].IndexOf("6") > -1) ? true : false;

                    hdnDesde.Text = aFiltros[2].ToString();
                    txtDesde.Text = Fechas.AnnomesAFechaDescLarga(int.Parse(aFiltros[2]));

                    hdnHasta.Text = aFiltros[3].ToString();
                    txtHasta.Text = Fechas.AnnomesAFechaDescLarga(int.Parse(aFiltros[3]));

                    txtConcepto.Text          = aFiltros[4];
                    hdnIdProyectoSubNodo.Text = aFiltros[5];
                    txtReferencia.Text        = aFiltros[6];
                    txtProyecto.Text          = aFiltros[7];

                    hdnIdAprobador.Text    = aFiltros[8];
                    txtAprobador.Text      = aFiltros[9];
                    hdnIdBeneficiario.Text = aFiltros[10];
                    txtBeneficiario.Text   = aFiltros[11];

                    hdnCR.Text  = aFiltros[12];
                    txtCR.Text  = aFiltros[13];
                    hdnCli.Text = aFiltros[14];
                    txtCli.Text = aFiltros[15];
                }

                //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);
            }
        }
        catch (Exception ex)
        {
            Master.sErrores = Errores.mostrarError("Error al cargar la página.", ex);
        }
    }
    private string Previsualizar(int i610_idordenfac)
    {
        StringBuilder sb = new StringBuilder();

        try
        {
            decimal dSubtotal = 0;
            decimal dTotal = 0;
            string  sMoneda = "", sFechaFactura = "";

            // Leer Orden
            SqlDataReader dr = ORDENFAC.Previsualizar(i610_idordenfac);
            if (dr.Read())
            {
                // Completar datos cabecera
                sMoneda = dr["t610_moneda"].ToString();
                sb.Append("<table id='tblCatalogo' style='width:920px;'>");
                sb.Append("<tr>");
                sb.Append("<td>");

                sb.Append("<table id='tblCabecera' style='width:900px; text-align:left;'>");
                sb.Append("<colgroup>");
                sb.Append("    <col style='width:500px;' />");
                sb.Append("    <col style='width:400px;' />");
                sb.Append("</colgroup>");

                sb.Append("<tr><td style='padding-left:3px; vertical-align:middle;'><label class='negri W70'>Su pedido: </label>" + HttpUtility.HtmlEncode(dr["t610_refcliente"].ToString()) + "</td>");
                sb.Append("<td align='right'>");

                sb.Append("<table border='0' width='100%' cellspacing='0' cellpadding='0'>");
                sb.Append("<tr>");
                sb.Append("<td width='6' height='6' background='../../../../Images/Tabla/7.gif'></td>");
                sb.Append("<td height='6' background='../../../../Images/Tabla/8.gif'></td>");
                sb.Append("<td width='6' height='6' background='../../../../Images/Tabla/9.gif'></td>");
                sb.Append("</tr>");
                sb.Append("<tr>");
                sb.Append("<td width='6' background='../../../../Images/Tabla/4.gif'>&nbsp;</td>");
                sb.Append("<td background='../../../../Images/Tabla/5.gif' style='padding:5px'>");
                sb.Append("<!-- Inicio del contenido propio de la página -->");
                sb.Append("<center>");

                sb.Append("<table style='width:99%;text-align:left' cellpadding='2'>");
                sb.Append("<tr><td><nobr class='NBR W360' onmouseover='TTip(event)'>" + dr["t302_denominacion_destfact"].ToString() + "</nobr></td></tr>");
                sb.Append("<tr><td>" + dr["Direccion"].ToString() + "</td></tr>");
                sb.Append("<tr><td>" + dr["CodPostal"].ToString() + " " + dr["Poblacion"].ToString() + "</td></tr>");
                if (dr["t610_comentario"].ToString() != "")
                {
                    sb.Append("<tr><td>A/A: " + dr["t610_comentario"].ToString() + "</td></tr>");
                }
                else
                {
                    sb.Append("<tr><td>&nbsp;</td></tr>");
                }
                sb.Append("</table>");

                sb.Append("</center>");
                sb.Append("<!--  Fin del contenido propio de la página -->");
                sb.Append("</td>");
                sb.Append("<td width='6' background='../../../../Images/Tabla/6.gif'>&nbsp;</td>");
                sb.Append("</tr>");
                sb.Append("<tr>");
                sb.Append("<td width='6' height='6' background='../../../../Images/Tabla/1.gif'></td>");
                sb.Append("<td height='6' background='../../../../Images/Tabla/2.gif'></td>");
                sb.Append("<td width='6' height='6' background='../../../../Images/Tabla/3.gif'></td>");
                sb.Append("</tr>");
                sb.Append("</table>");

                sb.Append("</td>");
                sb.Append("</tr>");

                //DateTime dtFecha = DateTime.Parse(dr["t610_fprevemifact"].ToString());
                if (dr["t610_fprevemifact"] != DBNull.Value)
                {
                    DateTime dtFecha = DateTime.Parse(dr["t610_fprevemifact"].ToString());
                    string   mes     = dtFecha.Month.ToString();
                    string   dia     = dtFecha.Day.ToString();
                    if (dia.Length == 1)
                    {
                        dia = "0" + dia;
                    }
                    if (mes.Length == 1)
                    {
                        mes = "0" + mes;
                    }
                    sFechaFactura = dia + "." + mes + "." + dtFecha.Year.ToString();
                }

                sb.Append("<tr><td colspan='2'><br>");
                sb.Append(" <TABLE cellpadding='5px' style='width:100%;'>");
                sb.Append("  <colgroup><col style='width:15%;'/><col style='width:15%;'/><col style='width:15%;'/><col style='width:55%;'/></colgroup>");
                sb.Append("     <tr>");
                sb.Append("     <td class='bordeltb' style='vertical-align:top;'><label class='negri'>N.I.F. cliente</label></br><label style='margin-top:5px;'>" + dr["NifDestFra"].ToString() + "</label></td>");
                sb.Append("     <td class='bordeltb' style='vertical-align:top;'><label class='negri'>Fecha factura</label></br><label style='margin-top:5px;'>" + sFechaFactura + "</label></td>");
                sb.Append("     <td class='bordeltb' style='vertical-align:top;'><label class='negri'>Código cliente</label></br><label style='margin-top:5px;'>" + dr["t302_codigoexterno"].ToString() + "</label></td>");
                sb.Append("     <td class='bordes' style='vertical-align:top;'><label class='negri'>Forma de pago</label></br><label style='margin-top:5px;'>" + dr["denominacion_condicionpago"].ToString() + "</label></td>");
                sb.Append("     </tr>");
                sb.Append(" </table>");
                sb.Append(" </td>");
                sb.Append("</tr>");
                sb.Append("</table>");

                sb.Append(" </td>");
                sb.Append("</tr>");
                sb.Append("<tr>");
                sb.Append("<td><br>");

                sb.Append("<table class='texto' style='width:900px;' cellpadding='5px'>");
                sb.Append("<colgroup>");
                sb.Append("    <col style='width:570px;' />");
                sb.Append("    <col style='width:70px;' />");
                sb.Append("    <col style='width:130px;' />");
                sb.Append("    <col style='width:130px;' />");
                sb.Append("</colgroup>");

                sb.Append("<tr>");
                sb.Append("<td class='bordeltb2' style='padding-left:3px;'><label class='negri'>Concepto</label></td>");
                sb.Append("<td class='bordeltb2' align='right'><label class='negri'>Cantidad</label></td>");
                sb.Append("<td class='bordeltb2' align='right'><label class='negri'>Precio</label></td>");
                sb.Append("<td class='bordes2'   align='right' style='padding-right:28px;'><label class='negri'>Importe</label></br></td>");
                sb.Append("</tr>");
                sb.Append("</table>");

                float   ft610_dto_porcen  = float.Parse(dr["t610_dto_porcen"].ToString());
                decimal dt610_dto_importe = decimal.Parse(dr["t610_dto_importe"].ToString());

                decimal dImporte       = 0;
                string  strTexto       = "";
                string  sIdProyecto    = int.Parse(dr["t301_idproyecto"].ToString()).ToString("###,###");
                string  sTextoCabecera = dr["t610_textocabecera"].ToString();
                sTextoCabecera = sTextoCabecera.Replace(((char)13).ToString() + ((char)10).ToString(), "<br>").Replace((char)34, (char)39);

                sb.Append("<div id='divCatalogo' style='overflow: auto; overflow-x: hidden; width: 917px; height: 350px;'>");
                sb.Append("<table style='width:900px;' cellpadding='5px'>");
                sb.Append("<colgroup>");
                sb.Append("    <col style='width:570px;' />");
                sb.Append("    <col style='width:70px;' />");
                sb.Append("    <col style='width:130px;' />");
                sb.Append("    <col style='width:130px;' />");
                sb.Append("</colgroup>");

                sb.Append("<tr><td style='padding-left:3px;border-left: #5894ae 1px solid;border-right: #5894ae 1px solid;'>Nuestra referencia: " + sIdProyecto + "</td><td style='text-align:right;vertical-align: bottom;border-right: #5894ae 1px solid;'></td><td style='text-align:right;vertical-align: bottom;border-right: #5894ae 1px solid;'></td><td style='text-align:right;vertical-align:bottom;padding-right:28px;border-right: #5894ae 1px solid;'></td></tr>");
                if (sTextoCabecera != "")
                {
                    sb.Append("<tr style='word-wrap: break-word;'><td style='padding-left:3px;border-left: #5894ae 1px solid;border-right: #5894ae 1px solid;'>" + sTextoCabecera + "</td><td style='text-align:right;vertical-align: bottom;border-right: #5894ae 1px solid;'></td><td style='border-right: #5894ae 1px solid;'></td><td style='border-right: #5894ae 1px solid;text-align:right;vertical-align:bottom;padding-right:28px;'></td></tr>");
                }

                // Completar datos de detalle

                dr = POSICIONFAC.CatalogoByOrdenFac(null, i610_idordenfac);

                int i = 0;
                while (dr.Read())
                {
                    sb.Append("<tr>");
                    strTexto = (string)dr["t611_descripcion"]; // SUSTITUIMOS RETORNO DE CARRO Y COMILLA DOBLE X COMILLA SIMPLE
                    strTexto = strTexto.Replace(((char)13).ToString() + ((char)10).ToString(), "<br>").Replace((char)34, (char)39);

                    sb.Append("<td style='padding-left:3px;word-wrap: break-word;border-left: #5894ae 1px solid;border-right: #5894ae 1px solid;'>" + strTexto + "</td>");
                    sb.Append("<td style='text-align:right;vertical-align:bottom;border-right: #5894ae 1px solid;'>" + float.Parse(dr["t611_unidades"].ToString()).ToString("N") + "</td>");

                    sb.Append("<td style='text-align:right;vertical-align:bottom;border-right: #5894ae 1px solid;");
                    if (decimal.Parse(dr["t611_preciounitario"].ToString()) < 0)
                    {
                        sb.Append(" color:red;");
                    }
                    sb.Append("'>" + decimal.Parse(dr["t611_preciounitario"].ToString()).ToString("N"));

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

                    sb.Append("<td style='text-align:right;vertical-align:bottom;padding-right:28px;border-right: #5894ae 1px solid;");
                    if (decimal.Parse(dr["importe_sin_dto"].ToString()) < 0)
                    {
                        sb.Append(" color:red;");
                    }
                    sb.Append("'>" + decimal.Parse(dr["importe_sin_dto"].ToString()).ToString("N"));

                    sb.Append("</td>");
                    sb.Append("</tr>");

                    dSubtotal += decimal.Parse(dr["importe_sin_dto"].ToString());
                    dImporte   = 0;

                    if ((float)dr["t611_dto_porcen"] > 0)
                    {
                        sb.Append("<tr style='height:26px'>");
                        sb.Append("<td style='text-align:right; vertical-align:top; border-left: #5894ae 1px solid;border-right: #5894ae 1px solid;'><span style='position:relative;top:-10px'>Descuento (" + float.Parse(dr["t611_dto_porcen"].ToString()).ToString("N") + " %)</span>");
                        sb.Append("</td>");
                        sb.Append("<td style='border-right: #5894ae 1px solid;'>");
                        sb.Append("</td>");

                        sb.Append("<td style='vertical-align:top; text-align:right; border-right: #5894ae 1px solid;");
                        if (decimal.Parse(dr["importe_porcen"].ToString()) < 0)
                        {
                            sb.Append(" color:red;");
                        }
                        sb.Append("'><span style='position:relative;top:-10px'>" + decimal.Parse(dr["importe_porcen"].ToString()).ToString("N"));

                        sb.Append("</span></td>");
                        dImporte = decimal.Parse(dr["importe_porcen"].ToString()) * (-1);

                        sb.Append("<td style='vertical-align:top; text-align:right; padding-right:28px; border-right: #5894ae 1px solid;");
                        if (dImporte < 0)
                        {
                            sb.Append(" color:red;");
                        }
                        sb.Append("'><span style='position:relative;top:-10px'>" + dImporte.ToString("N"));

                        sb.Append("</span></td>");
                        sb.Append("</tr>");
                    }

                    if ((decimal)dr["t611_dto_importe"] > 0)
                    {
                        sb.Append("<tr style='height:25px'>");
                        sb.Append("<td style='vertical-align:top; text-align:right; border-left: #5894ae 1px solid;border-right: #5894ae 1px solid;'><span style='position:relative;top:-10px'>Descuento</span>");
                        sb.Append("</td>");
                        sb.Append("<td style='vertical-align:top; text-align:right;border-right: #5894ae 1px solid;'>");
                        sb.Append("</td>");

                        sb.Append("<td style='vertical-align:top; text-align:right; border-right: #5894ae 1px solid;");
                        if (decimal.Parse(dr["t611_dto_importe"].ToString()) < 0)
                        {
                            sb.Append(" color:red;");
                        }
                        sb.Append("'><span style='position:relative;top:-10px'>" + decimal.Parse(dr["t611_dto_importe"].ToString()).ToString("N"));

                        sb.Append("</span></td>");
                        dImporte = decimal.Parse(dr["t611_dto_importe"].ToString()) * (-1);

                        sb.Append("<td style='vertical-align:top; text-align:right; padding-right:28px; border-right: #5894ae 1px solid;");
                        if (dImporte < 0)
                        {
                            sb.Append(" color:red;");
                        }
                        sb.Append("'><span style='position:relative;top:-10px'>" + dImporte.ToString("N"));

                        sb.Append("</span></td>");
                        sb.Append("</tr>");
                    }
                    dSubtotal += dImporte;
                    i++;
                }
                while (i < 16)
                {
                    sb.Append("<tr><td style='border-left: #5894ae 1px solid;border-right: #5894ae 1px solid;'>&nbsp;</td><td style='border-right: #5894ae 1px solid;'></td><td style='border-right: #5894ae 1px solid;'></td><td style='border-right: #5894ae 1px solid;'></td></tr>");
                    i++;
                }

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

                dTotal = dSubtotal;

                sb.Append("<table style='width:901px;' cellpadding='0px'>");
                sb.Append("<colgroup>");
                sb.Append("    <col style='width:571px;' />");
                sb.Append("    <col style='width:70px;' />");
                sb.Append("    <col style='width:130px;' />");
                sb.Append("    <col style='width:130px;' />");
                sb.Append("</colgroup>");

                // Cerrar cuerpo

                sb.Append("<tr>");
                sb.Append("<td style='padding-left:3px;' class='bordet'>");
                sb.Append("</td>");
                sb.Append("<td style='text-align:right;' class='bordet'>");
                sb.Append("</td>");
                sb.Append("<td style='text-align:right;' class='bordet'>");
                sb.Append("</td>");
                sb.Append("<td style='text-align:right;' class='bordet'>");
                sb.Append("</td>");
                sb.Append("</tr>");

                // Subtotal

                sb.Append("<tr>");
                sb.Append("<td style='padding-left:3px;padding-top:5px;' >");
                sb.Append("</td>");
                sb.Append("<td style='text-align:right;padding-top:5px;'>");
                sb.Append("</td>");
                sb.Append("<td style='text-align:right;padding-top:5px; padding-right:5px;' class='bordelr' ><label class='negri'>Subtotal</label>");
                sb.Append("</td>");
                sb.Append("<td style='text-align:right;padding-right:28px;padding-top:5px;' class='bordelr'");
                if (dSubtotal < 0)
                {
                    sb.Append("color:red");
                }
                sb.Append("'>" + dSubtotal.ToString("N"));
                sb.Append("</td>");
                sb.Append("</tr>");

                // Descuento en porcentaje

                if (ft610_dto_porcen > 0)
                {
                    sb.Append("<tr>");
                    sb.Append("<td style='padding-left:3px;padding-top:5px;'>");
                    sb.Append("</td>");
                    sb.Append("<td style='text-align:right;padding-top:5px;'>");
                    sb.Append("</td>");
                    sb.Append("<td style='text-align:right;padding-top:5px; padding-right:5px;' class='bordelr' ><label class='negri'>Descuento (" + ft610_dto_porcen.ToString("N") + " %)</label>");
                    sb.Append("</td>");
                    decimal dDto = (dSubtotal * decimal.Parse(ft610_dto_porcen.ToString()) / 100) * -1;
                    sb.Append("<td class='bordelr' style='text-align:right;padding-right:28px;padding-top:5px;");
                    if (dDto < 0)
                    {
                        sb.Append("color:red");
                    }
                    sb.Append("'>" + dDto.ToString("N"));
                    sb.Append("</td>");
                    sb.Append("</tr>");
                    dTotal = dTotal + dDto;
                }

                // Descuento en importe

                if (dt610_dto_importe > 0)
                {
                    sb.Append("<tr>");
                    sb.Append("<td style='padding-left:3px;padding-top:5px;'>");
                    sb.Append("</td>");
                    sb.Append("<td style='text-align:right;padding-top:5px;'>");
                    sb.Append("</td>");
                    sb.Append("<td style='text-align:right;padding-top:5px; padding-right:5px;' class='bordelr' ><label class='negri'>Descuento</label>");
                    sb.Append("</td>");
                    decimal dDto = (dt610_dto_importe * -1);
                    sb.Append("<td class='bordelr' style='text-align:right;padding-right:28px;padding-top:5px;");
                    if (dDto < 0)
                    {
                        sb.Append("color:red");
                    }
                    sb.Append("'>" + dDto.ToString("N"));
                    sb.Append("</td>");
                    sb.Append("</tr>");
                    dTotal = dTotal + dDto;
                }

                // Total

                sb.Append("<tr>");
                sb.Append("<td style='padding-left:3px;padding-top:5px;padding-bottom:5px;'>");
                sb.Append("</td>");
                sb.Append("<td style='text-align:right;padding-top:5px;padding-bottom:5px;'>");
                sb.Append("</td>");
                sb.Append("<td style='text-align:right;padding-top:5px;padding-bottom:5px; padding-right:5px;' class='bordelrb'><label class='negri'>Total</label>");
                sb.Append("</td>");
                sb.Append("<td class='bordelrb' style='text-align:right;padding-right:5px;padding-top:5px;padding-bottom:5px;'><label ");
                if (dTotal < 0)
                {
                    sb.Append(" style='color:red'");
                }
                sb.Append(">" + dTotal.ToString("N") + "</label> " + sMoneda);
                sb.Append("</td>");
                sb.Append("</tr>");

                sb.Append(" </td>");
                sb.Append("</tr>");
                sb.Append("</table>");
            }
            else
            {
                sErrores = "No se han obtenido los datos de la orden de facturación nº: " + i610_idordenfac.ToString("#,###") + ".";
                return("Error@#@" + sErrores);
            }
            dr.Close();
            dr.Dispose();

            return("OK@#@" + sb.ToString());
        }
        catch (Exception ex)
        {
            return("Error@#@" + Errores.mostrarError("Error al obtener las posiciones de una órden de facturación.", ex));
        }
    }
        public static void Grabar(Nullable <int> idTituloFicepi, string sTitulo, short idcodtitulo, int idficepi, Nullable <byte> tipo,
                                  Nullable <byte> modalidad, bool tic, bool finalizado, string especialidad, string centro,
                                  Nullable <short> inicio, Nullable <short> fin, string ndoctitulo, string ndocexpdte,
                                  string observa, char estado, string motivort, int idficepiu, bool cambioDoc,
                                  bool cambioExp, char estadoIni, string opcion, short idcodtituloIni,
                                  Nullable <long> idContentServer, Nullable <long> idContentServerExpte, string sEsMiCV)
        {
            int    nFilasModificadas = 0;
            string sResul            = "";
            bool   bErrorControlado  = false;

            #region Inicio Transacción

            SqlConnection  oConn;
            SqlTransaction tr;
            try
            {
                oConn = Conexion.Abrir();
                tr    = Conexion.AbrirTransaccion(oConn);
            }
            catch (Exception ex)
            {
                throw (new Exception("Error al abrir la conexion", ex));
            }

            #endregion

            try {
                if (idTituloFicepi == null)
                {
                    if (idcodtitulo == -1)
                    {
                        idcodtitulo = SUPER.BLL.Titulacion.Insertar(null, sTitulo, idficepi, bool.Parse("false"), (byte)tipo, (byte?)modalidad, tic);
                    }
                    //DAL.TituloFicepi.Insert(tr, idcodtitulo, idficepi, tipo, modalidad, tic, finalizado, especialidad, centro, inicio, fin, doctitulo, ndoctitulo, docexpdte, ndocexpdte, estado, motivort, observa, idficepiu);
                    nFilasModificadas = DAL.TituloFicepi.Insert(tr, idcodtitulo, idficepi, finalizado, especialidad, centro, inicio, fin,
                                                                ndoctitulo, ndocexpdte, estado, motivort, observa, idficepiu,
                                                                idContentServer, idContentServerExpte);    //, tipo, modalidad, tic
                }
                else
                {
                    switch (opcion)
                    {
                    case "1":
                        //Titulacion Validada y no Cambiada
                        //Update de tituloficepi sin cambiar codtitulo
                        //    nFilasModificadas = DAL.TituloFicepi.Update(tr, (int)idTituloFicepi, idcodtitulo, idficepi, tipo, modalidad, tic, finalizado, especialidad, centro, inicio, fin, doctitulo, ndoctitulo, docexpdte, ndocexpdte, estado, motivort, observa, idficepiu, cambioDoc, cambioExp, estadoIni);
                        nFilasModificadas = DAL.TituloFicepi.Update(tr, (int)idTituloFicepi, idcodtitulo, idficepi, finalizado,
                                                                    especialidad, centro, inicio, fin, ndoctitulo, ndocexpdte,
                                                                    estado, motivort, observa, idficepiu, cambioDoc,
                                                                    cambioExp, estadoIni, idContentServer, idContentServerExpte);        //, tipo, modalidad, tic
                        break;

                    case "2":
                        //Titulacion Validada y Cambiada por otra validada
                        //Update de tituloficepi cambiando codtitulo
                        //    nFilasModificadas = DAL.TituloFicepi.Update(tr, (int)idTituloFicepi, idcodtitulo, idficepi, tipo, modalidad, tic, finalizado, especialidad, centro, inicio, fin, doctitulo, ndoctitulo, docexpdte, ndocexpdte, estado, motivort, observa, idficepiu, cambioDoc, cambioExp, estadoIni);
                        nFilasModificadas = DAL.TituloFicepi.Update(tr, (int)idTituloFicepi, idcodtitulo, idficepi, finalizado,
                                                                    especialidad, centro, inicio, fin, ndoctitulo, ndocexpdte,
                                                                    estado, motivort, observa, idficepiu, cambioDoc,
                                                                    cambioExp, estadoIni, idContentServer, idContentServerExpte);        //, tipo, modalidad, tic
                        break;

                    case "3":
                        //Titulacion Validada y Cambiada por otra no validada
                        //Insertar Nueva Titulacion y update tituloficepi
                    {
                        idcodtitulo = SUPER.BLL.Titulacion.Insertar(null, sTitulo, idficepi, bool.Parse("false"), (byte)tipo, (byte?)modalidad, tic);
                        //        nFilasModificadas = DAL.TituloFicepi.Update(tr, (int)idTituloFicepi, idcodtitulo, idficepi, tipo, modalidad, tic, finalizado, especialidad, centro, inicio, fin, doctitulo, ndoctitulo, docexpdte, ndocexpdte, estado, motivort, observa, idficepiu, cambioDoc, cambioExp, estadoIni);
                        nFilasModificadas = DAL.TituloFicepi.Update(tr, (int)idTituloFicepi, idcodtitulo, idficepi, finalizado,
                                                                    especialidad, centro, inicio, fin, ndoctitulo, ndocexpdte,
                                                                    estado, motivort, observa, idficepiu,
                                                                    cambioDoc, cambioExp, estadoIni, idContentServer, idContentServerExpte);            //, tipo, modalidad, tic
                    }
                    break;

                    case "4":
                        //Titulacion No Validada y Cambiada por otra no validada
                        //Update Titulacion
                        DAL.Titulacion.Update(tr, idcodtitulo, sTitulo, bool.Parse("false"), idficepi, (byte)tipo, (byte?)modalidad, tic, true);
                        nFilasModificadas = 1;
                        break;

                    case "5":
                        //Paso de titulación No Validada a Validada
                        //Update TituloFicepi y borra la titulación no validad si no está en uso
                        nFilasModificadas = DAL.TituloFicepi.Update(tr, (int)idTituloFicepi, idcodtitulo, idficepi, finalizado,
                                                                    especialidad, centro, inicio, fin, ndoctitulo, ndocexpdte,
                                                                    estado, motivort, observa, idficepiu, cambioDoc, cambioExp, estadoIni,
                                                                    idContentServer, idContentServerExpte);
                        if (idcodtituloIni != -1)
                        {
                            SUPER.BLL.Titulacion.BorrarNoUsada(tr, idcodtituloIni);
                        }
                        break;
                    }
                }

                if (nFilasModificadas == 0)
                {
                    sResul           = "Fila no actualizada";
                    bErrorControlado = true;
                    throw (new Exception(sResul));
                }
                if (sEsMiCV == "S" && (estado.ToString() == "O" || estado.ToString() == "P"))
                {
                    DAL.Curriculum.ActualizadoCV(tr, idficepi);
                }

                Conexion.CommitTransaccion(tr);
            }
            catch (Exception ex)
            {
                Conexion.CerrarTransaccion(tr);
                if (bErrorControlado)
                {
                    sResul = ex.Message;
                }
                else
                {
                    sResul = Errores.mostrarError("Error al actualizar la titulación.", ex);
                }
            }
            finally
            {
                Conexion.Cerrar(oConn);
                if (sResul != "")
                {
                    if (bErrorControlado)
                    {
                        sResul = "ErrorControlado##EC##" + sResul;
                    }
                    throw (new Exception(sResul));
                }
            }
        }
        /*
         * private void ShowReport(System.Data.DataView table,string fileName, Form parentForm ,ReportParameterCollection parameters, bool show, bool print, bool printSetup, bool printProgress, bool askPrint)
         * {
         *
         *  ResourceManager res = new ResourceManager("mz.erp.ui.forms.localization", this.GetType().Assembly);
         *  _viewer.Localize = res;
         *  try
         *  {
         *
         *
         *      string path = this.getPath(fileName);
         *      MdiParent = parentForm;
         *      if ( File.Exists( path ) )
         *      {
         *
         *          StreamReader sr = new StreamReader( path );
         *          DataDynamics.ActiveReports.ActiveReport rpt = new DataDynamics.ActiveReports.ActiveReport();
         *
         *
         *
         *          rpt.LoadLayout( sr.BaseStream );
         *
         *          DataDynamics.ActiveReports.DataSources.SqlDBDataSource sqlDS = (DataDynamics.ActiveReports.DataSources.SqlDBDataSource)rpt.DataSource;
         *          rpt.DataSource = table;
         *          rpt.AddNamedItem("Empresa", _uiController.Empresa);
         *          rpt.AddNamedItem("DireccionEmpresa", _uiController.DireccionEmpresa);
         *          rpt.AddNamedItem("TelefonoEmpresa", _uiController.TelefonoEmpresa);
         *          rpt.AddNamedItem("Usuario", _uiController.Usuario);
         *
         *
         *          rpt.AddNamedItem("CUITEmpresa",Variables.GetValueString("Sistema.CUITEmpresa"));
         *          rpt.AddNamedItem("CategoriaIvaEmpresa",Variables.GetValueString("Sistema.CategoriaIvaEmpresa"));
         *          rpt.AddNamedItem("IngresosBrutosEmpresa",Variables.GetValueString("Sistema.IngresosBrutosEmpresa"));
         *          rpt.AddNamedItem("InicioActividadesEmpresa",Variables.GetValueString("Sistema.InicioActividadesEmpresa"));
         *          rpt.AddNamedItem("Logo",Variables.GetValueString("Reportes.Logo"));
         *
         *
         *          rpt.AddNamedItem("CategoriaIvaEmpresa", Variables.GetValueString("Sistema.CategoriaDeIvaEmpresa"));
         *          rpt.AddNamedItem("CUITEmpresa", Variables.GetValueString("Sistema.CUITEmpresa"));
         *          rpt.AddNamedItem("IngresosBrutosEmpresa", Variables.GetValueString("Sistema.IngresosBrutosEmpresa"));
         *          rpt.AddNamedItem("InicioActividadesEmpresa", Variables.GetValueString("Sistema.InicioActividadesEmpresa"));
         *          rpt.AddNamedItem("Logo", Variables.GetValueString("Reportes.Logo"));
         *
         *
         *          FormatParameters(rpt,parameters);
         *
         *          rpt.Run();
         *
         *          _viewer.Document = rpt.Document;
         *          if(show)
         *              Show();
         *          else
         *          {
         *              if(print)
         *                  if(askPrint)
         *                  {
         *                      if(MessageBox.Show("Desea Imprimir?","Impresión", System.Windows.Forms.MessageBoxButtons.YesNo,System.Windows.Forms.MessageBoxIcon.Question).Equals(DialogResult.Yes))
         *                          //Deprecated
         *                          //rpt.Document.Print(printSetup, printProgress);
         *                          rpt.Document.Print(printSetup,printProgress,false);
         *                  }
         *                  else
         *                      //Deprecated
         *                      //rpt.Document.Print(printSetup, printProgress);
         *                      rpt.Document.Print(printSetup,printProgress,false);
         *          }
         *
         *      }
         *      else
         *      {
         *          Errores.MessageFileNotFound();
         *      }
         *  }
         *  catch(Exception e )
         *  {
         *
         *      Console.WriteLine(e.Message);
         *
         *  }
         * }
         */

        /*Se Modifico, pasar al codigo nuevo*/
        private void ShowReport(System.Data.DataView table, string fileName, Form parentForm, ReportParameterCollection parameters, bool show, bool print, bool printSetup, bool printProgress, bool askPrint, bool customPrinter, string PrinterName, short copies)
        {
            ResourceManager res = new ResourceManager("mz.erp.ui.forms.localization", this.GetType().Assembly);

            _viewer.Localize = res;
            try
            {
                string path = this.getPath(fileName);
                MdiParent = parentForm;
                if (File.Exists(path))
                {
                    StreamReader sr = new StreamReader(path);
                    DataDynamics.ActiveReports.ActiveReport rpt = new DataDynamics.ActiveReports.ActiveReport();



                    rpt.LoadLayout(sr.BaseStream);

                    DataDynamics.ActiveReports.DataSources.SqlDBDataSource sqlDS = (DataDynamics.ActiveReports.DataSources.SqlDBDataSource)rpt.DataSource;
                    rpt.DataSource = table;
                    rpt.AddNamedItem("Empresa", _uiController.Empresa);
                    rpt.AddNamedItem("DireccionEmpresa", _uiController.DireccionEmpresa);
                    rpt.AddNamedItem("TelefonoEmpresa", _uiController.TelefonoEmpresa);
                    rpt.AddNamedItem("Usuario", _uiController.Usuario);

                    rpt.AddNamedItem("CUITEmpresa", Variables.GetValueString("Sistema.CUITEmpresa"));
                    rpt.AddNamedItem("CategoriaIvaEmpresa", Variables.GetValueString("Sistema.CategoriaIvaEmpresa"));
                    rpt.AddNamedItem("IngresosBrutosEmpresa", Variables.GetValueString("Sistema.IngresosBrutosEmpresa"));
                    rpt.AddNamedItem("InicioActividadesEmpresa", Variables.GetValueString("Sistema.InicioActividadesEmpresa"));
                    rpt.AddNamedItem("Logo", Variables.GetValueString("Reportes.Logo"));


                    FormatParameters(rpt, parameters);

                    rpt.Run(false);

                    _viewer.Document = rpt.Document;

                    /*
                     *                                      System.Drawing.Printing.PrinterSettings ps = new System.Drawing.Printing.PrinterSettings();
                     *                                      ps.PrinterName = "HP LaserJet 1020 en PCADRIANA";
                     *                                      rpt.Document.Printer.PrinterSettings = ps;
                     *                                      rpt.Document.Printer.PrinterName = "HP LaserJet 1020 en PCADRIANA";
                     *
                     *
                     *                                      rpt.Document.Printer.PrinterSettings.PrinterName = "HP LaserJet 1020 en PCADRIANA";
                     *                                      rpt.Document.Printer.PrinterName = "HP LaserJet 1020 en PCADRIANA";
                     */



                    if (show)
                    {
                        Show();
                    }
                    else
                    {
                        if (print)
                        {
                            /*
                             * PrintDialog pd = new PrintDialog();
                             * System.Drawing.Printing.PrinterSettings.StringCollection printerCollection = System.Drawing.Printing.PrinterSettings.InstalledPrinters;
                             * pd.Document = rpt.Document.Printer;
                             * pd.Document.DefaultPageSettings.PrinterSettings.PrinterName = @"\\PCADRIANA\HP LaserJet 1020";
                             */
                            //pd.Document.PrinterSettings.
                            //pd.Document.Print();
                            if (askPrint)
                            {
                                if (MessageBox.Show("Desea Imprimir?", "Impresión", System.Windows.Forms.MessageBoxButtons.YesNo, System.Windows.Forms.MessageBoxIcon.Question).Equals(DialogResult.Yes))
                                {
                                    if (customPrinter)
                                    {
                                        rpt.Document.Printer.PrinterSettings.PrinterName = PrinterName;                                          //@"\\PCADRIANA\HP LaserJet 1020";
                                    }
                                    else
                                    if (_uiController.AllowImpresoraPorTipoDeComprobante)
                                    {
                                        rpt.Document.Printer.PrinterSettings.PrinterName = _uiController.ImpresoraPorTipoDeComprobante;
                                    }

                                    //rpt.Document.Printer.PrinterSettings.PrinterName = PrinterName;
                                    rpt.Document.Printer.PrinterSettings.Copies = copies;

                                    //German 20100713 - Tarea 793
                                    if (_uiController.BandejaPersonalizada)
                                    {
                                        if (_uiController.Bandeja != null && _uiController.Bandeja != string.Empty)
                                        {
                                            //rpt.Document.Printer.PrinterSettings.DefaultPageSettings.PaperSource = GetPrinterTray(_uiController.Bandeja, rpt.Document);
                                            rpt.Document.Printer.DefaultPageSettings.PaperSource = GetPrinterTray(_uiController.Bandeja, rpt.Document);
                                        }
                                    }
                                    else
                                    {
                                        if (_uiController.AllowBandejaPorTipoDeComprobante)
                                        {
                                            if (_uiController.BandejaPorTipoDeComprobante != null && _uiController.BandejaPorTipoDeComprobante != string.Empty)
                                            {
                                                //rpt.Document.Printer.PrinterSettings.DefaultPageSettings.PaperSource = GetPrinterTray(_uiController.BandejaPorTipoDeComprobante, rpt.Document);
                                                rpt.Document.Printer.DefaultPageSettings.PaperSource = GetPrinterTray(_uiController.BandejaPorTipoDeComprobante, rpt.Document);
                                            }
                                        }
                                    }
                                    //Fin German 20100713 - Tarea 793


                                    //Deprecated
                                    //rpt.Document.Print(printSetup, printProgress);
                                    rpt.Document.Print(printSetup, printProgress, false);
                                }
                            }
                            else
                            {
                                if (customPrinter)
                                {
                                    rpt.Document.Printer.PrinterSettings.PrinterName = PrinterName;                                      //@"\\PCADRIANA\HP LaserJet 1020";
                                }
                                else
                                if (_uiController.AllowImpresoraPorTipoDeComprobante)
                                {
                                    rpt.Document.Printer.PrinterSettings.PrinterName = _uiController.ImpresoraPorTipoDeComprobante;
                                }

                                rpt.Document.Printer.PrinterSettings.Copies = copies;

                                //German 20100713 - Tarea 793
                                if (_uiController.BandejaPersonalizada)
                                {
                                    if (_uiController.Bandeja != null && _uiController.Bandeja != string.Empty)
                                    {
                                        //rpt.Document.Printer.PrinterSettings.DefaultPageSettings.PaperSource = GetPrinterTray(_uiController.Bandeja, rpt.Document);
                                        rpt.Document.Printer.DefaultPageSettings.PaperSource = GetPrinterTray(_uiController.Bandeja, rpt.Document);
                                    }
                                }
                                else
                                {
                                    if (_uiController.AllowBandejaPorTipoDeComprobante)
                                    {
                                        if (_uiController.BandejaPorTipoDeComprobante != null && _uiController.BandejaPorTipoDeComprobante != string.Empty)
                                        {
                                            //rpt.Document.Printer.PrinterSettings.DefaultPageSettings.PaperSource = GetPrinterTray(_uiController.BandejaPorTipoDeComprobante, rpt.Document);
                                            rpt.Document.Printer.DefaultPageSettings.PaperSource = GetPrinterTray(_uiController.BandejaPorTipoDeComprobante, rpt.Document);
                                        }
                                    }
                                }
                                //Fin German 20100713 - Tarea 793

                                //Deprecated
                                //rpt.Document.Print(printSetup, printProgress);
                                rpt.Document.Print(printSetup, printProgress, false);
                            }
                        }
                    }
                }
                else
                {
                    Errores.MessageFileNotFound();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }